Это общий вопрос, но вот конкретный случай, в котором я ищу решение:
У меня есть Dictionary<int, List<string>>
, к которому я хочу применить различные предикаты. Я хочу один метод, который может заботиться о нескольких запросах LINQ, таких как эти:
from x in Dictionary
where x.Value.Contains("Test")
select x.Key
from x in Dictionary
where x.Value.Contains("Test2")
select x.Key
Итак, я ищу такой метод:
public int GetResult(**WhatGoesHere** filter)
{
return from x in Dictionary.Where(filter)
select x.Key;
}
Для использования следующим образом:
int result;
result = GetResult(x => x.Value.Contains("Test"));
result = GetResult(x => x.Value.Contains("Test2"));
Каков правильный синтаксис для WhatGoesHere ?