none
Se puede usar el control BindingNavigator para guardar datos con EF ? RRS feed

  • Pregunta

  • hola, estoy desarrollando una aplicacion en capas con VS 2010 y EF 4. Entonces a la capa de presentacion llegan las entidades representadas por su respectivo DTO. En la interfaz de usuario uso un DaraGridView, un BindingSource y un BindingNavigator, para traer los datos no tengo problema, para salvar las modificaciones hechas en el grid quiero hacerlo por medio del saveToolsStripButton, alguien tiene idea de como podria hacer esto ?, en los ejemplos que he visto siempre se usa un TablaAdapter pero creo que esto no sirve en mi caso.

    Aqui cargo los datos al grid:

    ................................................
    IBancos bancos = new BancosClient();                
    converterToDTOList = bancos.GetItemsFromBanco();
    bsBancos.DataSource = converterToDTOList;
    dgvBancos.DataSource = bsBancos;
    bnBancos.BindingSource = bsBancos;

    En el save tengo lo siguiente:

    private void saveToolStripButton_Click(object sender, EventArgs e)
            {
                if (converterToDTOList.Count > 0)
                {
                    Validate();
                    bsBancos.EndEdit();
    
                }
            }
    Aqui no se como hacer para salvar los cambios hechos en el grid. Gracias
     
    domingo, 28 de abril de 2013 21:20

Todas las respuestas

  • En la interfaz de usuario uso un DaraGridView, un BindingSource y un BindingNavigator

    pero si usas un datagridview para que necesitas el BindingNavigator ? este esta de mas, si la idea, imagino, es que al seelccionar un row del grid se pase el dato a los textbox, para que necesitas usar un control de navegacion sino la hay

    para salvar las modificaciones hechas en el grid quiero hacerlo por medio del saveToolsStripButton

    y que pasa si usas

    List<clase> list = DataGriView1.DataSource as List<clase>;

    y esa lista la envias a persitir

    en los ejemplos que he visto siempre se usa un TablaAdapter pero creo que esto no sirve en mi caso.

    no el tableadaptar son dataset tipado, no tiene nada que ver con EF

    saludos


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina

    lunes, 29 de abril de 2013 2:41
  • Gracias por tu respuesta, cuando dices:

    "pero si usas un datagridview para que necesitas el BindingNavigator ? este esta de mas, si la idea, imagino, es que al seelccionar un row del grid se pase el dato a los textbox, para que necesitas usar un control de navegacion sino la hay"

    En realidad no pensaba pasar los datos de la row seleccionada a ningun textbox, yo pensaba modificar los datos de la row seleccionada sobre el mismo grid (y si puedo darme cuenta de que rows fueron modificadas para que se guarden solo esos cambios, mejor), te perece factible este planteo ?.

    Ademas por lo que entiendo con el BindingNavigator puedo justamente navegar, agregar y quitar rows en el grid.

    cuando dices:

    "y que pasa si usas

    List<clase> list = DataGriView1.DataSource as List<clase>;

    y esa lista la envias a persitir"

    Me parece bien tratare de hacerlo asi

    cuando dices: 

    "no el tableadaptar son dataset tipado, no tiene nada que ver con EF"

    Es correcto, lo que quise decir es que no encontre ningun control del tipo EntityDataSource o algo parecido para poder trabajar con Winforms y EF, tu conoces alguno ?

    Gracias nuevamente




    martes, 30 de abril de 2013 2:05