Pregunta

Estoy tratando de escribir una aplicación que vb.net usesSqlDependency. La dependencia se activará cuando se añade a los datos de la base de datos. Me pregunto si es posible tener la dependencia devuelve los datos / consulta que lo provocó.

En la actualidad tengo que tener el evento onchange desencadenar una instrucción de selección para actualizar los datos que he almacenado en caché. ¿Es posible tener sólo la dependencia devolver los nuevos datos que la desencadenaron

es decir. se añade la siguiente a una tabla, la tabla tiene 2 campos (ID, datos)

id: 1  
data: hello  

Cuando esto se añade la dependencia onchange evento será despedido y

id: 1  
data: hello  

será devuelto

¿Fue útil?

Solución

http://rusanu.com/2006/06/17 / el-misterioso-notificación / para una explicación de cómo funciona SqlDependency bajo las sábanas. No es posible obtener los cambios de datos junto con la notificación. Si bien existen tecnologías de seguimiento de todo cambio y el cambio de captura de datos, pero para una multitud de razones, no son apropiado para vigilar los cambios aplicaciones. Están destinados a la sincronización de datos (Sync Framework) y tendrían que ser tirado por el cambio, lo que en efecto mata a cualquier intento de utilizarlos para el almacenamiento en caché.

La única tecnología proactiva notificación de cambio es de consulta Notificatio, ver más detalles en mi enlace.

Otros consejos

No. No creo que eso sea posible con SqlDependency. Usted podría utilizar activadores, o utilizar el seguimiento de cambios en SQL 2008.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top