Question

Je suis en train d'écrire une application qui vb.net usesSqlDependency. La dépendance sera déclenchée lorsque des données sont ajoutées à la base de données. Je me demande s'il est possible d'avoir la dépendance retourner les données / requête qui a déclenché.

À l'heure actuelle je dois avoir l'événement onchange déclenche une instruction select pour actualiser les données que je l'ai mis en cache. Est-il possible d'avoir juste la dépendance revenir les nouvelles données qui ont déclenché l'événement

i.e.. Ce qui suit est ajouté à une table, la table dispose de 2 champs (id, données)

id: 1  
data: hello  

Si l'on ajoute la dépendance onchange événement sera tiré et

id: 1  
data: hello  

sera de retour

Était-ce utile?

La solution

Voir http://rusanu.com/2006/06/17 / la mystérieuse notification / pour une explication comment fonctionne SqlDependency sous les couvertures. Il est impossible d'obtenir les changements de données ainsi que la notification. Bien qu'il existe des technologies autour du suivi des modifications et Change Data Capture, mais pour une multitude de raisons, ils ne sont pas appropiate pour les changements de surveillance des applications. Ils sont destinés à la synchronisation des données (Sync Framework) et devraient être tiré pour le changement, qui en effet tue toute tentative de les utiliser pour la mise en cache.

La seule technologie de changement de notification proactive est la requête Notificatio, voir plus de détails dans mon lien.

Autres conseils

Non. Je ne pense pas que ce soit possible avec SqlDependency. Vous pouvez soit les déclencheurs d'utilisation, ou utiliser le suivi des modifications dans SQL 2008.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top