Para poder hacer uso de sentencias if dentro de nuestras consultas por LINQ, haremos uso de Lambda.
¿Cómo utilizar un try y catch dentro de una consulta LINQ?
A continuación con un ejemplo te muestro como es posible hacerlo:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 | EntityDB db= new EntityDB(); var lst = from d in db.tabla.ToList() //es importante hacerlo lista select new TablaViewModel { id = d.id, //campo es string por lo cual //nuestra función delegada regresara igual string campo = ( new Func< string >(() => { try { //utilizamos if if (d.alguncampo==1){ return "Activo" ; } else { return "Inactivo" ; } } catch { //si ocurre un error return "Error" ; } } ) )() }; |
De esta manera podemos manipular la información para lograr el resultado deseado.