У меня есть действие контроллера под названием List, которое принимает следующие параметры
int Filer, int Field, int Operator, строка QueryValue
public enum Filter
{
ActiveEmployee,
OnHoldEmployee,
InactiveEmployee
}
public enum Field
{
Name,
ABRAID,
JobTitle,
LocationCode,
Department
}
public enum Operator
{
Contains,
StartWith,
EndWith,
EqualTo
}
Возможные случаи:
Select employee where Name Equals "Value"
Select employee where Name EndWith with "Value"
Select employee where Name StartWith with "Value"
Select employee where JobTitle Contains "Value"
Select employee where Department Equals "Value"
Я использую LINQ для запроса базы данных
Employees = from p in DB.Employees
where p.AWCID.Contains(queryvalue)
select p;
Но это значит, что я должен иметь дело с вложенным переключателем, чтобы покрыть все случаи.
Это более 180 строк кода для покрытия 3 переменных,
Я не очень осведомлен о синтаксисе LINQ для поддержки нескольких значений.
Есть мысли?
Спасибо.