none
Ingresar datos a una propiedad List de una clase RRS feed

  • Pregunta

  • Hola estoy desarrollando en vs 2010 (WPF) tengo una clase con sus propiedades dentro de la cuales tengo una propiedad List de la misma clase. Esto por que en la consulta me regresa muchos registros, mi duda es como le paso los datos a esa propiedad List?

    A continuacion pongo el codigo haber si alguien me puede ayudar por favor:

    public

     

    class RepCapturas

    {

     

    public string

    Nombre

    {get

    {return

    _nombre;}

     

    set{_nombre = value;

    }}

     

    public int

    Codigo

    {get

    {return

    _codigo;}

     

    set{_codigo = value;

    }}

     //esta es la propieda LIST

     

    public List<RepCapturas

    > Lista

    {

     

    get { return

    _lista; }

     

    set { _lista = value

    ; }

    }

    }

    

    Ahora al momento de crear la nueva clase de RepCapturas hago lo siguiente:

    //declaro el nuevo objeto Datos de RepCapturas

    RepCapturas

    Datos = new RepCapturas();

    while (reader.Read())

    {

    Datos.Nombre = reader.GetString(1);

    Datos.Codigo = reader.GetInt32(4);

    //aqui es donde no se como meter los valores a la lista

    Datos.Lista ????  como le hago?

    

    martes, 26 de abril de 2011 15:49

Respuestas

  • Hola Lenadro, upss, si me falto esta linea, (gracias por la observacion) queda así:

    RepCapturas Datos = null;
    List<RepCapturas> lista = new List<RepCapturas>();

    while (reader.Read())
    {
      Datos = new RepCapturas(); //o bien como tu lo propones.
      Datos.Nombre = reader.GetString(1);
      Datos.Codigo = reader.GetInt32(4); 
      lista.Add(Datos);
    }

    Saludos.


    Nicolás Herrera
    Bogotá - Colombia
    BLOG - Core Group BogotaDotNet
    "Daría todo lo que sé, por la mitad de lo que ignoro." Rene Descartes

    • Marcado como respuesta jesl martes, 26 de abril de 2011 16:29
    martes, 26 de abril de 2011 16:20

Todas las respuestas

  • pero se lo pasas desde donde ?

    desde un control o desde codigo, o sea la idea es actualziar la lsita vinculado a un control de WPF, o agregarias programatricamente el item

     

    saludos


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina
    martes, 26 de abril de 2011 16:03
  • Hola Jesl, ya lo tienes d eun pelo, te quedaria así:

    RepCapturas Datos = null;
    List<RepCapturas> lista = new List<RepCapturas>();

    while (reader.Read())
    {
      Datos.Nombre = reader.GetString(1);
      Datos.Codigo = reader.GetInt32(4); 
      lista.Add(Datos);
    }

    Atento a los coentarios, saludos.


    Nicolás Herrera
    Bogotá - Colombia
    BLOG - Core Group BogotaDotNet
    "Daría todo lo que sé, por la mitad de lo que ignoro." Rene Descartes
    martes, 26 de abril de 2011 16:05
  • hola Nicoloco

    una correccion, deberias crear una nueva instancia por cada item que agregas


    List<RepCapturas> lista = new List<RepCapturas>();

    while (reader.Read())
    {

      RepCapturas Datos = new RepCapturas();
      Datos.Nombre = reader.GetString(1);
      Datos.Codigo = reader.GetInt32(4); 
      lista.Add(Datos);
    }

    es importante definir la linea que marco en negrita

    saludos


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina
    martes, 26 de abril de 2011 16:14
  • Hola Lenadro, upss, si me falto esta linea, (gracias por la observacion) queda así:

    RepCapturas Datos = null;
    List<RepCapturas> lista = new List<RepCapturas>();

    while (reader.Read())
    {
      Datos = new RepCapturas(); //o bien como tu lo propones.
      Datos.Nombre = reader.GetString(1);
      Datos.Codigo = reader.GetInt32(4); 
      lista.Add(Datos);
    }

    Saludos.


    Nicolás Herrera
    Bogotá - Colombia
    BLOG - Core Group BogotaDotNet
    "Daría todo lo que sé, por la mitad de lo que ignoro." Rene Descartes

    • Marcado como respuesta jesl martes, 26 de abril de 2011 16:29
    martes, 26 de abril de 2011 16:20
  • Muchas gracias a ambos!!!
    martes, 26 de abril de 2011 16:29
  • hola

    pero porque defines a

    RepCapturas Datos = null;

    por fuera del loop si podria estar dentro el mismo, de esta forma limitas el ambito del mismo

    por eso es que use

    while (reader.Read())
    {

      RepCapturas Datos = new RepCapturas();

    digo hay alguna razon, para hacerlo ?

     

    saludos



    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina
    martes, 26 de abril de 2011 16:35
  • Hola @Leandro, digo hay alguna razon, para hacerlo ?

    No, la unica razon del porque lo hago así, es para poder crear nuevas instancias, a partir de una declaracion privada (invisible a otras clases), pero visible para todos los metodos de la clase, claro siempre y cuando el estado actual del objeto sea volcado a una coleccion que retenga la informacion que necesito.

    Son como costumbres raras que he adoptado, jajaj.

    Saludos. 


    Nicolás Herrera
    Bogotá - Colombia
    BLOG - Core Group BogotaDotNet
    "Daría todo lo que sé, por la mitad de lo que ignoro." Rene Descartes
    martes, 26 de abril de 2011 16:50