Principales respuestas
Duda con linea de codigo

Pregunta
-
Buenas tardes, necesito si alguien puede echarme un cable con esta linea de codigo.
Estoy desarrollando una aplicacion con el patron MVVM. Y cuando llego a esta linea
var Hist = datos.Historia_D_N.Where(x => x.Paciente == paciente.Codigo) as Historia_D_N;
me devuelve un null. Me he asegurado de que con esas condiciones haya registros
Sin embargo si hago
var Hist = datos.Pacientes.Select(x => x.Historia_D_N);
Si que me devuelve distinto de null, por lo que deduzco que el problema es por "as Historia_D_N". Este objeto es una propiedad de la viewmodel
public Historia_D_N HistoricoDN { get { return _HistoricoDN; } set { _HistoricoDN = value; RaisePropertyChangedEvent("HistoricoDN"); } }
El tipo Historia_D_N es una entidad del modelo EntityFramework de mi aplicacion.
Gracias de antemano!
Un saludo.
Respuestas
-
hola
no sera que quieres hacer
Historia_D_N Hist = datos.Historia_D_N.FirstOrDefault(x => x.Paciente == paciente.Codigo) as Historia_D_N;
el tema es que el where devuelve un Ienumerable <> por lo que aunque el valor sea uno solo devuelve una coleccion
al castear a un item unico es logico que no puede por eso deja null
saludos
Leandro Tuttini
Blog
Buenos Aires
Argentina- Marcado como respuesta osmagarci viernes, 26 de abril de 2013 15:27
Todas las respuestas
-
hola
no sera que quieres hacer
Historia_D_N Hist = datos.Historia_D_N.FirstOrDefault(x => x.Paciente == paciente.Codigo) as Historia_D_N;
el tema es que el where devuelve un Ienumerable <> por lo que aunque el valor sea uno solo devuelve una coleccion
al castear a un item unico es logico que no puede por eso deja null
saludos
Leandro Tuttini
Blog
Buenos Aires
Argentina- Marcado como respuesta osmagarci viernes, 26 de abril de 2013 15:27
-
Siento deciros que es la ultima vez que abro una pregunta en el chat...... La razon:
Me vais a arruinar con la de cervecitas que os tengo que invitar!!!!!
Gracias por la ayuda Leandro! Te debo unas cuantas ;););) Me encanta este foro por la rapidez que hay en ayudar.
Un saludo!