Динамическая фильтрация с использованием Linq

у меня естьList<Device>, вDevice В классе есть 4 свойства, а именноName, OperatingSystem, Status а такжеLastLoggedInUser, Мне нужно написать метод:

IQueryable<Device> FilterDeviceList(
    List<Device> Devices,
    List<string> filter,
    string filterValue)

гдеfilter будет содержать параметры для фильтрации"name", "os" указать поля для включения в поиск. Если"all" пропущено, то все 4 поля должны быть включены.filtervalue будет содержать значение для фильтрации как"windows", "Calvin".

Кто-нибудь может предложить метод для достижения этой цели?

Редактировать:

Если мне неясно, я делаю фильтрацию примерно так: это закомментированная часть, для которой мне нужен код.

if(filter.contains(name))
{
//filter with name
}
if( filter.contains(both name and os)
{
// I only need the filter value to contain in name or OS (only needed in any one of the field,not necessary to be in both)

}`

Ответы на вопрос(4)

Ваш ответ на вопрос