我有两个应用程序使用EF6访问MySQL数据库。我用一个来输入新数据,另一个用来显示那些数据。但是,我需要在更改数据库时收到通知。我正在复制数据库,然后每次抓取一个新副本并比较差异,但这是非常低效的。
有没有办法监控EF6的变化?
答案 0 :(得分:0)
不,afaik没有办法通过实体框架通过数据库通知任何更改。
通常您必须在两个应用程序之间实现一些通信。有几种可能性,我首先想到的两个是:
在数据库中使用一些额外的表,其中第一个应用程序在更改数据时会产生一些“注释”。这些“注释”可能包含时间戳,因此第二个应用程序可以快速决定数据库中是否有“新”(“注释”可能包含有关确切添加/更改内容的其他信息)
您还可以使用WCF /套接字/ IPC在两个应用程序之间实现某些直接通信。根据您的情况,这可能更高效(并且可能更快地检测到更改),但这通常更难实现。