首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >当事件触发器在事件处理程序中调用时,DbContext无法检索数据。

当事件触发器在事件处理程序中调用时,DbContext无法检索数据。
EN

Stack Overflow用户
提问于 2014-11-18 06:17:57
回答 1查看 112关注 0票数 1

我正在使用EF 5,模型第一,在.NET 4.5与Win Server 2012和2008 R2。

我的应用程序中基本上有三个主要组件:

  1. 数据采集(在ModbusTCP上)
  2. 报告和
  3. REST接口

我还实现了一个调度器类,主要是让其他类调度一些操作,例如数据获取和报告。

数据采集的轮询每5秒执行一次,并将数据写入DB中的表。这个很好,这里没问题。

报告每24小时在午夜被调用,它从数据库中检索数据并生成电子表格并发送电子邮件。午夜,当事件触发时,在事件处理程序的DbContext块中,没有从数据库中检索到的数据。但是,如果我从其他方法手动调用事件处理程序,相同的使用块的DbContext拥有所有数据。

当处理程序从事件中调用时,我找不到问题所在。我尝试过在数据采集、写操作上使用TranscationScope来允许RepetitiveRead,但这使问题更加严重。我在写操作中删除了TransactionScope

请提出缩小我的调查范围和解决问题的方法。

提前谢谢。

EN

回答 1

Stack Overflow用户

发布于 2014-12-08 17:36:32

由于没有找到解决方案,我继续修改我的代码,使其在内部调用事件处理程序,而不是从调度类的事件触发器调用事件处理程序。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26987861

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档