J'ai deux programmes C# qui partagent un seul fichier de base de données SQLite. Un programme (appelons-le Writer) écrit de nouvelles données dans la base de données. L'autre programme (Reader) le lit. Les deux programmes utilisent Fluent NHibernate et System.Data.SQLite pour accéder à la base de données.NHibernate peut-il détecter lorsqu'un autre programme a écrit de nouvelles données dans une base de données SQLite partagée?
Actuellement, je viens d'avoir un gros bouton Actualiser dans mon programme Reader, et l'utilisateur doit cliquer dessus pour obtenir toutes les nouvelles données qui ont été écrites dans la base de données depuis la dernière actualisation. Cela fonctionne, mais n'est guère élégant.
Existe-t-il un moyen pour que NHibernate déclenche un événement dans le programme Reader lorsque la base de données est mise à jour par Writer, afin que je puisse automatiquement présenter de nouvelles données à l'utilisateur? (J'ai regardé les documents NH pour Interceptors et événements, mais il n'était pas clair si ceux-ci feraient ce que je veux)
Ou, y at-il un bon moyen d'interroger pour les mises à jour en utilisant NH?
A défaut d'une solution NH, puis-je faire quelque chose de similaire avec System.Data.SQLite, ou via un autre mécanisme de niveau inférieur?
Vous voulez dire System.IO.FileSystemWatcher, n'est-ce pas? Merci pour la suggestion - l'exemple dans l'aide de .Net semble simple. Le seul inconvénient est que c'est un peu dépendant de DB, comme le mentionne zoidbeck. –