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:
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.
