LINQ: Использование троичного (?:) С LINQ let недостаточно, требуется «IF», но, похоже, он не может заставить его работать
Я пытаюсь включить IF в свой LET в LINQ, но я не могу заставить его работать, кажется, что он работает для троичного оператора, но это TRUE или FALSE, и мне нужно иметь более двух вариантов.
Я думаю, это хорошо объясняет
В основном у меня есть выбор, который выбирает элементы, используя соединения из БД. Затем я получаю статус для каждой записи, но мне нужно объединить отдельные таблицы в зависимости от типа из products.type
var tst = from p in products join i in info on p.id equals i.pid
// if p.type = "home" then ...
let status = from s in homestatus
select new { status = s.status }
// if p.type ="offshore" then
let status = from s in offshorestatus
select new { status = s.status }
// if p.type ="internal" then
let status = from s in internalestatus
select new { status = s.status }
select new {
name = p.name,
status = status.StatusText
}
У кого-нибудь есть идеи, как сделать стандартный IF, чтобы я мог выбрать, какой СТАТУС (пусть) я хочу выполнить.
заранее спасибо