none
Desmaterializar una lista de objetos RRS feed

  • Pregunta

  • Hola señores del foro un cordial saludo...

    Necesito de su orientacion para resolver un problema de echo no se si lo estoy haciendo bien...Estoy aprendiedo Entity framework en capas...en una de las capas tengo la siguiente funcion:

        public List<Personas> listarPersona()
            {
                using (PersonaDBModelContainer context = new PersonaDBModelContainer())
                {

                     var query = from per in context.Personas
                         join ciu in context.Ciudades
                         on per.CiudadId equals ciu.Id
                         select new
                         {
                             per.Ced_Persona,
                             per.Nomb_Persona,
                             per.Apel_Persona,
                             ciu.Nomb_Ciudad
                         };
                   
                };
            }

    Por supuesto mi funcion esta incompleta por que no se como completarla alli mi problema, lo que quiero hacer es obtener una lista de Personas (Objetos de tipo persona) por que mi intension es poder plasmar el resultado de esa busqueda en mi capa de presentacion especificamente en un DataGridView.

    Por lo que he leido una vez que hago la consulta debo crear una lista que recorro por medio de foreach, luego esa lista la podria plasmar.

    Estoy orientado?, es asi como se debe hacer? o estoy apuntando a donde no es?. En tal caso como puedo terminar esa funcion que quiero hacer?

    Gracias por su tiempo.

    miércoles, 9 de marzo de 2016 2:53

Todas las respuestas

  • Hola,

    Prueba hacer esto :

    * Crea una clase Persona (Acomoda los tipos según sea tu caso)

            public class Persona
            {
                public string cedula { get; set; }
                public string nombre { get; set; }
                public string apellido { get; set; }
                public string ciudad { get; set; }
            }

    Luego en tu método cambias.

            public IEnumerable<Persona> listarPersona()
            {
                using (PersonaDBModelContainer context = new PersonaDBModelContainer())
                {
    
                    var personas = from per in context.Personas
                                join ciu in context.Ciudades
                                on per.CiudadId equals ciu.Id
                                select new Persona
                                {
                                    cedula = per.Ced_Persona,
                                    nombre = per.Nomb_Persona,
                                    apellido = per.Apel_Persona,
                                    ciudad = per.Nomb_Ciudad
                                }).ToList();
    
                    return personas;
    
                };
            }
    

    Saludos.


    JC NaupaCrispín

    miércoles, 9 de marzo de 2016 3:12