Проблема с сопоставлением XML LINQ [закрыто]C#

Место общения программистов C#
Ответить
Anonymous
 Проблема с сопоставлением XML LINQ [закрыто]

Сообщение Anonymous »

XML:

Код: Выделить всё

RVM_GWR_Class166_DMSL_C
Class166


RVM_BR_Class170_DMCL_W_C
Class170

Предыдущий код:

Код: Выделить всё

var values = xml.Descendants("DLC")
.Where(i => i.Element("ObjectClass").Value == locoName)
.Select(DLC => new
{
ShortName = (string)DLC.Element("ShortName"),
DisplayName = (string)DLC.Element("DisplayName"),
});
В настоящее время код работает, проверяя, соответствует ли строка locoName XML-элементу ObjectClass.
Но что я действительно нужно сделать что-то вроде этого:

Код: Выделить всё

.Where(locoName.Contains(i => i.Element("ShortName").Value))
Вышеупомянутое не компилируется из-за:

Невозможно преобразовать лямбда-выражение в тип «строка», потому что это не так. тип делегата

Мне нужно найти совпадение, в котором строка locoName содержит XML-элемент ShortName.
LocoName будет примерно таким: «RVM_GWR_Class166_Z_ABC123», т.е.; часть Class166 будет соответствовать.
Я не совсем понимаю, как это сделать в LINQ.

Подробнее здесь: https://stackoverflow.com/questions/793 ... ng-trouble
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»