LINQ: Usando um ternário (?:) Com LINQ let não é suficiente, precisa de um "IF", mas parece que não consegue fazê-lo funcionar

Eu estou tentando incluir um IF dentro do meu LET no LINQ, mas eu não posso fazê-lo funcionar, parece funcionar para o operador ternário, mas isso é verdadeiro ou falso e eu preciso ter mais de 2 opções.

Eu acho que isso explica bem

Basicamente eu tenho um select que seleciona itens usando joins de um DB. Então eu recebo o status de cada registro, mas eu tenho que fazer uma junção em tabelas separadas, dependendo do tipo de 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
}

Alguém tem alguma idéia de como fazer um IF padrão para que eu possa selecionar qual STATUS (let) gostaria de executar.

desde já, obrigado

questionAnswers(1)

yourAnswerToTheQuestion