У меня есть метод в моем приложении, который должен читать, фильтровать и обслуживать данные на основе набора критериев. Я пытаюсь использовать LINQ для достижения этой цели:Как динамически конструировать/изменять часть оператора LINQ
var pipelineData = from data in new XPQuery<AccountView3.PipelineData>(uow)
where data.Stage.ToLower().Contains("won")
&& data.RevenueStartDate.Value.Year == DateTime.Today.Year
&& data.WeekOfTheYear >= priorWeekCutoff
&& (!string.IsNullOrEmpty(data.PlatformTcv) && data.PlatformTcv != "#N/A")
select data;
Само по себе это работает просто отлично. Проблема заключается в том, что в зависимости от критериев поиска, которые передаются, вместо данных. ПлатформаTvc может быть data.WorkspaceTvc или data.CyberTvc и т. Д. У меня нет возможности заранее знать, какой из возможных Необходимо оценить 5 вариантов.
Мой вопрос: есть ли способ построить оператор LINQ таким образом, чтобы часть инструкции была условно выполнена. Поэтому, если пользователь передает «Платформу» в качестве критериев поиска, оператор LINQ будет читать ... string.IsNullOrEmpty(data.PlatformTcv)
, но если критерии «Cyber», то этот оператор LINQ должен читать ... string.IsNullOrEmpty(data.CyberTcv)
Есть ли способ сделать это ?
Going попробовать это сейчас ... –
Это было гений! Спасибо! –