【发布时间】:2014-08-01 17:07:10
【问题描述】:
我有两个使用 EF6 访问 MySQL 数据库的应用程序。我使用一个输入新数据,另一个显示该数据。但是,我需要在数据库更改时收到通知。我在复制数据库,然后每次都抓取一个新副本并比较差异,但这非常低效。
有没有办法使用 EF6 监控更改?
【问题讨论】:
标签: c# mysql entity-framework
我有两个使用 EF6 访问 MySQL 数据库的应用程序。我使用一个输入新数据,另一个显示该数据。但是,我需要在数据库更改时收到通知。我在复制数据库,然后每次都抓取一个新副本并比较差异,但这非常低效。
有没有办法使用 EF6 监控更改?
【问题讨论】:
标签: c# mysql entity-framework
不,afaik 无法通过实体框架获得数据库关于任何更改的通知。
通常您必须在两个应用程序之间实现一些通信。有几种可能性,我首先想到的两个是:
在数据库中使用一些附加表,其中第一个应用程序在更改数据时会做一些“注释”。这些“注释”可能包含时间戳,因此第二个应用程序可以快速确定数据库中是否有任何“新”(“注释”可能包含有关添加/更改的内容的附加信息)
李>您还可以使用 WCF/sockets/IPC 在两个应用程序之间实现一些直接通信。根据您的场景,这可能会更高效(并且可能会更快地检测到更改),但这通常更难以实施。
【讨论】: