DataSet sin DataAdapter

25/05/2005 - 17:27 por David Esteban | Informe spam
Hola, dentro del modelo de n capas de mi aplicación, tengo un servicio web
XML que accede a la base y devuelve DataSet-s. Cuando el componente de
presentación sólo lo necesita para solo-lectura todo perfecto, el modelo
funciona, el problema que le veo es cuando quieres hacer cambios al DataSet
devuelto para que estos se lleven a la BD. En mi diseño actual, el
componente de presentación no conoce como ha sido obtenido el DataSet, esto
lo hace el servicio web, por lo que no se como actualizar el DataSet contra
la BD.

Vamos que la duda es existencial... en todos lados leo que el traspaso de
datos entre procesos es conveniente hacerlo mediante DataSet-s, pero luego
me encuentro que tengo un DataSet que no se como llevarlo de nuevo a la BD.

¿Existe alguna manera de llevar los cambios de un DataSet a la BD sin
DataAdapter?

¿Alternativas al modelo? Por ejemplo, que el servicio web devuelva junto al
DataSet el DataAdapter correspondiente o llevar de nuevo el DataSet al
componente de acceso a datos para que lo actualice.



Un saludo a todos.

David Esteban

Email: david.sus@degap.net

Preguntas similare

Leer las respuestas

#1 Marcos Mellibovsky
28/05/2005 - 14:58 | Informe spam
deberias hacer una rutina que reciba el dataset y recorra la tabla
verificando la propiedad RowState para ver si es insertada, modificada,
borrada o sin cambios y ejecutar el comando correspondiente en la base


Saludos
Marcos Mellibovsky
MCAD - MCSD - MCSE - MCDBA
Cordoba - Argentina

"David Esteban" escribió en el mensaje
news:%
Hola, dentro del modelo de n capas de mi aplicación, tengo un servicio web
XML que accede a la base y devuelve DataSet-s. Cuando el componente de
presentación sólo lo necesita para solo-lectura todo perfecto, el modelo
funciona, el problema que le veo es cuando quieres hacer cambios al


DataSet
devuelto para que estos se lleven a la BD. En mi diseño actual, el
componente de presentación no conoce como ha sido obtenido el DataSet,


esto
lo hace el servicio web, por lo que no se como actualizar el DataSet


contra
la BD.

Vamos que la duda es existencial... en todos lados leo que el traspaso de
datos entre procesos es conveniente hacerlo mediante DataSet-s, pero luego
me encuentro que tengo un DataSet que no se como llevarlo de nuevo a la


BD.

¿Existe alguna manera de llevar los cambios de un DataSet a la BD sin
DataAdapter?

¿Alternativas al modelo? Por ejemplo, que el servicio web devuelva junto


al
DataSet el DataAdapter correspondiente o llevar de nuevo el DataSet al
componente de acceso a datos para que lo actualice.



Un saludo a todos.

David Esteban

Email:


Respuesta Responder a este mensaje
#2 Julio Casal
30/05/2005 - 08:18 | Informe spam
Qué tal David. Mira, lo que te sugiero es hacer un segundo webservice que
reciba el dataset que contiene los datos modificados. En tu capa de
presentación, simplemente toma el dataset que tiene los datos modificados y
hazle un dataset.GetChanges(). Con eso obtendrás una versión del dataset que
tiene solo los datos modificados. Envía ese nuevo dataset a tu webservice de
actualización y haz que el webservice se lo envíe a algún componente de tu
capa de negocio o de datos que se encargue de hacer el update hacia la BD.
Puedes revisar el rowstate de cada fila para verificar si la misma debe ser
insertada, actualizada o eliminada.

Saludos.

Julio Casal
Developer Senior .Net
MCP
Angel Intelligence


"David Esteban" wrote:

Hola, dentro del modelo de n capas de mi aplicación, tengo un servicio web
XML que accede a la base y devuelve DataSet-s. Cuando el componente de
presentación sólo lo necesita para solo-lectura todo perfecto, el modelo
funciona, el problema que le veo es cuando quieres hacer cambios al DataSet
devuelto para que estos se lleven a la BD. En mi diseño actual, el
componente de presentación no conoce como ha sido obtenido el DataSet, esto
lo hace el servicio web, por lo que no se como actualizar el DataSet contra
la BD.

Vamos que la duda es existencial... en todos lados leo que el traspaso de
datos entre procesos es conveniente hacerlo mediante DataSet-s, pero luego
me encuentro que tengo un DataSet que no se como llevarlo de nuevo a la BD.

¿Existe alguna manera de llevar los cambios de un DataSet a la BD sin
DataAdapter?

¿Alternativas al modelo? Por ejemplo, que el servicio web devuelva junto al
DataSet el DataAdapter correspondiente o llevar de nuevo el DataSet al
componente de acceso a datos para que lo actualice.



Un saludo a todos.

David Esteban

Email:



email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida