Base de données SQL Server Changement Écouteur C#
Je veux écouter les modifications de données dans une base de données SQL Server à partir de C#. J'espérais qu'il y aurait une sorte de port d'écoute que je pourrais utiliser pour déterminer si les données que j'ai, c'est obsolète. Malgré un scénario commun, je ne trouve pas de solutions qui ne sont pas simplement d'interroger la base de données.
- Je utiliser Linq-to-SQL pour accéder aux données, et donc avoir une DataContext objet, je l'espérais, je pouvais écouter un événement de modification de données mais je n'arrive pas à en trouver un.
Je comprends que c'est un non-trivial de la barrière (à Partir de la méthode C# SQL Server DB), la raison pour laquelle je m'attendais à ce problème résolu, c'est que c'est une exigence commune pour les Interfaces graphiques. Si il n'est pas possible à l'Écoute pour les mises à jour de la façon dont vous gardez les Données affichées dans une interface graphique, frais (Quand il est soutenu par une source de données SQL Server).
Bien que ce n'est pas de l'interface de travail, je m'attendais à s'adapter à quelque chose de ce domaine.
Est-il un moyen de s'abonner à la base de données SQL Server les événements de changement de C#?
Vous devez vous connecter pour publier un commentaire.
Je n'ai jamais utilisé avant, mais avez-vous essayé les Événements de SQL Server notifications?
Voir cet article: Débuter avec SQL Server Notifications d'Événements
Vous êtes à la recherche pour le
SqlDependency
de la classe, qui vous permet d'écouter pour la modification du jeu de résultats d'une requête SQL.Le DataContext de ne pas vous offrir n'importe quel type d'auditeur à la fonctionnalité de SQL Server. Votre meilleur pari est de créer un sondage, ou même d'un autre thread qui interroge la base de données régulièrement pour des changements et de les exposer à un événement qui votre application principale peut écouter.
Si vous utilisez SQL Server 2008, il est construit dans la Capture de Données modifiées, c'est assez pratique.
http://msdn.microsoft.com/en-us/library/bb522489.aspx
Vous pouvez lire les données du CDC.
Je voudrais utiliser un tableau à une seule ligne dans la base de données de catalogue de dernière mise à jour, insérées ou supprimées événements et créer des déclencheurs sur chaque table d'importance à la mise à jour de ce tableau et d'interroger cette table pour des modifications.