FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
||||
|
||||
Obtener datos de un datarow marcado como deleted
Hola a todos!
Mi problema es el siguiente, Un dataset cargo con los datos que se encuentran en la tabla. Luego comienzo a realizar las ABM sobre este. Cuando el usuario finaliza todas sus ABM este dataset lo retorno, de ahi con el metodo GetChanges() obtengo otro dataset el cual solo contiene las filas(Datarows) que su estado sea diferente de unchanged, es decir para mi caso(added, deleted, modified). Luego de obtener estos solo estos registros procedo a realizar el acceso a la BD para hacer las ABM, todo transcurre bien hasta que obtengo una fila marcada como deleted, dado que no puedo obtener los datos para asi cargarlos en el llamado del stored procedure que se encarga del borrado, como digo solo sucede con la que esta marcada como deleted. Hay alguna forma de obtener los datos de esta fila que esta marcada como deleted¿??¿¿?
__________________
Optimus Prime |
#2
|
|||
|
|||
Estoy haciendo mis primeros pasos en .NET pero te podria servir lo siguiente hacer ub select del datarow con la opcion DataViewRowState.Deleted.
|
#3
|
||||
|
||||
Ya eso lo hago, el problema es que me lanza una excepcion indicandome que no puedo acceder a los datos de esa fila porque esta marcada como deleted,
la forma en como lo hago es la siguiente: Tengo un DataSet con un DataTable asociado, el cual contiene los siguientes campos Cedula, Nombre el campo cedula es el principal.
Código:
DataSet dsDatosAbm = dsPrincipal.GetChages(); foreach(DataRow drRegistro in dsDatosAbm.Rows) { switch(drRegistro.RowState) { case DataRowState.Added: SalvarDatos(drRegistro);//Metodo que inserta el registro break; case DataRowState.Deleted: BorrarDatos(drRegistro);//Metodo que borra el registro break; case DataRowState.Modified: ModificarDatos(drRegistro);//Metodo que modifica el registro break; } }
__________________
Optimus Prime |
#4
|
||||
|
||||
Bueno, despues de tanto buscar y porque no esperar tambien haber si alguien me daba alguna luz, he resuelto mi problema. He aqui la forma en que lo hice, no se si sera la mas ortodoxa, pero funciona.
Como el mensaje que lanzaba la exepcion decia que no podia acceder a la informacion de una fila marcada como deleted, entonces como en el codigo que les mostre en el post anterior el metodo que se llama BorrarDatos() el cual recibe como parametro la fila que va a ser borrada, entonces en el interior de este metodo simplemente llamo al metodo rejectchanges de esta fila que envio, con esto la fila cambia de estado de deleted a unchanged y en este ultimo estado si se pueden obtener los datos.
__________________
Optimus Prime |
|
|
|