Мне нужна версия запроса LINQ ниже.
SELECT *
FROM Persons
WHERE (
Company = '9390'
AND Costcentre IN ('939140')
)
OR (
Company = '9391'
AND Costcentre NOT IN (
'939344'
,'939346'
,'939347'
,'939348'
)
)
OR (Company = '15B9')
Я написал запрос в LINQ. Но параметры в запросе должны быть получены из foreach l oop. Данные компании и CostCentre получены из List<DataPolicy>
.
DataPolicy {
public string CompanyCode { get; set; }
public List<string> IncludedCosts {get;set;} // for where contains
public List<string> ExcludedCosts {get;set;} // for where not contains
}
. Я написал запрос LINQ вручную.
personQuery = personQuery.Where(person => (
(person.Company == "9390" && person.CostCentre.Contains("939140")) ||
(person.Company == "9391" && !ids.Contains(person.CostCentre)) ||
(person.Company == "15B9")
));
Мне нужно динамически создать этот запрос с помощью DataPolicy l oop. Как я могу это сделать?