繁体   English   中英

实体框架DbContext从外部检测更改

[英]Entity Framework DbContext detect changes from outside

我敢肯定这是重复的,但是在浏览互联网后我找不到问题。 因此,如果这是重复的,请仅将我指向正确的一个。

问题:如何获取实体框架来拾取数据库中另一个来源发生的实体更改。

由于DbContext缓存未更新,我对此类型有很多问题。

示例:假设我有2个具有相同架构的服务器。 两台服务器一起工作,并且都使用表Person

  1. 服务器A创建21岁的Person Jack并将其保存到DB。 Jack缓存在服务器A的DbContext中。
  2. 服务器A创建后,服务器B从数据库中获取Jack 然后,服务器B将Jack更新到22岁,并将其保存到DB。
  3. 向服务器A发出对Jack的请求。因此,服务器A的DbContext会使用其缓存中的Jack版本进行响应...年龄仍为21岁。

我很难相信,服务器A的DbContext无法重新获取记录。 我觉得这种能力应该融入到实体框架中。 如果没有,那么我还有其他选择吗?

我想到的一个选择就是告诉实体框架不要使用缓存。 这可能吗?

我认为您将DbContext用作单例实例。 如果您每次都初始化DbContext,则不会发生此问题。 但是更多的可以在这里找到关于它的更多细节。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM