将EntityFramework升级为<package id="EntityFramework" version="6.1.3" targetFramework="net45" />
我开始得到错误:
System.Data.Entity.Core.EntityException:连接未关闭。连接的当前状态是连接。
System.Data.Entity.Core.EntityCommandExecutionException:ExecuteReader需要一个开放且可用的连接。该 连接的当前状态是打开的。
[InvalidOperationException:ExecuteReader需要打开和 可用连接。连接的当前状态是打开的。] at System.Data.SqlClient.SqlConnection.GetOpenConnection(String method)
我有两个版本,一个是以前的EF版本,并且给出了NO ERROR和一个新版本的新版本,它给出了这个错误。
任何人都知道什么是?
PS:我使用Newrelic来监控应用程序
答案 0 :(得分:1)
似乎,您必须按照here中的说明进行操作:
对于仍有此问题的人,请查看此链接:
How to: Manually Open the Connection from the Object Context
问题是实体框架会自动打开和关闭 连接每次调用数据库,因此使用时 交易,您正试图将交易分散开来 多个连接升级到MSDTC。
手动打开连接并在完成后将其关闭。那么 框架将只为您的所有呼叫使用一个连接。
再次,请查看链接以获取详细信息。