код на sql:
select
field1 = case
when field1==1 and field2==2 then "верни1"
when field3==333 and field1==111 and field2>555 then "верни2"
end,
field2,
field3,
...
from tb
Как написать аналогичный switch и case на c# чз linq?
from t in tb
select new
{
field1 = ???
}
When?
в c# вроде такого ключевого слова нет. гуглю
В селекте создай объект и там проверки делай на каждое поле через switch
а как это поможет написанию нескольких условий в case?
Это в бд полетит или в памяти?
в памяти. Впринципе вопрос снят, чз лямбду работает. Ну или ф-ю написать
Ну я б через Fluent сделал, типа select(тут ифами разрулить) мне кажется читабельнее будет
Ну да, так и делаю: from t in tbl select new { field1=new Func<string>(()=>{ тут нужные if }); }
благодарю, есть такая фича в свиче
Обсуждают сегодня