[SOLUCIONADO][source C#] ayuda con DataAdapter por favor

Iniciado por SRVAM, 25 Enero 2010, 21:49 PM

0 Miembros y 1 Visitante están viendo este tema.

SRVAM

buenas. pues no se porque motivo, el data adapter no me actualiza la base de datos, pero tampoco me da ningun fallo -.-" no consigo encontrar la solucion.

espero que podais ayudarme.

aqui os pongo el codigo del evento del boton insertar y el del form load.

dt_Empleados --> DataTable
da_Empleados --> DataAdapter

Código (csharp) [Seleccionar]
private void Empleados_Load(object sender, EventArgs e)
       {
           try
           {
               str_conexion = TaxiGest.Properties.Settings.Default.cadena_conexion;
               conexion = new SqlCeConnection(str_conexion);
               conexion.Open();
               da_Empleados = new SqlCeDataAdapter("SELECT * FROM EMP_Empleados", conexion);
               dt_Empleados.Clear();
               da_Empleados.Fill(dt_Empleados);
               dgv_Empleados.DataSource = dt_Empleados;
               conexion.Close();

               campos = new TextBox [7] { txt_dni, txt_nombre, txt_apellidos, txt_telefono, txt_telefonomovil, txt_segsocial, txt_fechaalta};
           }
           catch (Exception ex)
           {
               MessageBox.Show(ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
               menu_salir_Click(null, null);
           }
       }


Código (csharp) [Seleccionar]
       private void btn_insertar_Click(object sender, EventArgs e)
       {
           DataRow nuevo_empleado;
           nuevo_empleado = dt_Empleados.NewRow();

           try
           {
               if (campos[0].Text == "" || campos[1].Text == "" || campos[2].Text == "" || campos[5].Text == "" || campos[6].Text == "")
               {
                   MessageBox.Show("Se ha producido un error al agregar un nuevo empleado. Revise los datos introducidos", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                   return;
               }
               for (index = 0; index < dt_Empleados.Columns.Count; index++)
               {
                   nuevo_empleado[index] = campos[index].Text;
               }

               dt_Empleados.Rows.Add(nuevo_empleado);
               dt_Empleados.AcceptChanges();
               //NO GUARDA LOS CAMBIOS EN LA BASE DE DATOS
               da_Empleados.Update(dt_Empleados.Select(null, null, DataViewRowState.CurrentRows));
               vaciar_campos();
           }
           catch (Exception ex)
           {
               MessageBox.Show(ex.Message + "Se ha producido un error al agregar un nuevo empleado. Revise los datos introducidos", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
           }
       }


cualquier critica es bien recibida ;)

un saludo, y gracias por adelantado ^^
C# Programmer

-Estudiante MCTS .NET Framework 3.5-

SRVAM

ya lo he solucionado ;) cuando algun MOD lo vea que cierre el post ;)

nos vemos  ;D
C# Programmer

-Estudiante MCTS .NET Framework 3.5-

raul338