Where
возвращает коллекцию, вместо этого вы хотите проверить, существует ли значение Any
, удовлетворяющее x.Equals(key)
Dictionary<int?, List<int?>> pegMap = new Dictionary<int?, List<int?>>()
{
{ 1, new List<int?> {1,2,3} },
{ 2, new List<int?> {4,5,6} },
{ 3, new List<int?> {1,4,5} },
{ 4, new List<int?> {6,7,8} },
};
int? key = 2;
int? value = 4;
if (pegMap.Where(p => p.Key == key).Any(p => p.Value.Any(v => v == value)))
{
// returns true;
}
// You can also use
bool result = pegMap.ContainsKey(key) && pegMap[key].Contains(value);