В настоящее время я работаю над приложением C # 4.7.2. Я собираюсь написать метод расширения для пользовательского типа, и, к сожалению, я борюсь со своим запросом LINQ.
Мне нужен фильтр List<Dictionary<string, object>>
, чтобы найти элементы Dictionary<string, object>
в списке с определенным ключом и удалить его из моего списка. Кроме того, запись в списке может быть нулевой.
Элемент списка (словарь) может выглядеть так, может быть несколько элементов со значением ключа A, мне нужно удалить все на самом деле:
Key | Value
"MyId" : "A",
"Width" : 100,
"Length" : 50
Очень простая структура. Самое сложное - найти элементы словаря в списке. Мой метод расширения выглядит так:
public static List<Dictionary<string, object>> RemoveItem(this List<Dictionary<string, object> items, string value)
{
var itemToRemove = items.FirstOrDefault(x => x.ContainsKey("MyId")).Values.Contains(value);
items.Remove(itemToRemove);
return items;
}
К сожалению, этот запрос LINQ не работает правильно.
Знаете ли вы, как решить эту проблему?
Большое спасибо !!