- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个关于 EntityFramework with CodeFirst 方法的问题。基于 EntityConnection 源代码和文档,我无法使用已打开的 SqlConnection 创建它。它要求应该关闭。
我们有一些不同的 DB 数据层(nHibernate 等),如果我们可以在它们之间重用相同的 SqlConnection,那就太好了。但似乎 EntityFramework 不允许这样做。我可以将关闭的 SqlConnection 传递给 DbContext,但是关闭每个 DbContext 的连接对我来说并不好。
有没有办法重用打开的sql连接?
编辑
在 EF 转到 OpenSource 之后,我能够对其进行更新。我改变的唯一一行是在 System.Data.Entity.Core.EntityClient.EntityConnection 类的构造函数中。
if (connection.State != ConnectionState.Closed)
{
//throw new ArgumentException(Strings.EntityClient_ConnectionMustBeClosed);
}
var connection = new SqlConnection(connectionString);
connection.Open();
MetadataWorkspace workspace = GetWorkspace(connection); // I loaded it from the same context, and save it in memory.
EntityConnection eConnection = new EntityConnection(workspace, connection);
using(var context = new EFContext(connection, false))
{
var someData = context.SomeTable.ToList();
}
connection.Close();
最佳答案
当前不支持将打开的连接传递给上下文,因为上下文内部始终使用 EntityConnection
如果您检查文档,您将看到传递的商店连接必须处于关闭状态。
解决方法可以是在使用其他数据访问技术之前创建上下文并显式打开连接
objectContext.Connection.Open();
SqlConnection
在上下文的范围内:
var dbConnection = ((EntityConnection)objectContext.Connection).StoreConnection;
DbContext
解决问题的更多详细信息.
关于.net - EntityConnection 和打开的 SqlConnection,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9773360/
我有一个关于 EntityFramework with CodeFirst 方法的问题。基于 EntityConnection 源代码和文档,我无法使用已打开的 SqlConnection 创建它。它
关于管理 EntityContext 生命周期有很多问题, 例如Instantiating a context in LINQ to Entities 我得出的结论是,实体上下文应被视为一个工作单元,
“EntityConnection 只能用关闭的 DbConnection 构造”这是我在尝试构建提供开放连接的实体连接时遇到的问题。有一个 transactionscope 打开,我不想打开一个新连
我有一个使用 EF CTP5 的应用。 在这种特殊情况下,我需要降级到一些经典的 ADO.NET(以便在存储过程中读取多个结果集,这是 EF 不支持的)。 因此,我尝试使用 EntityConnect
例如: SqlConnection connection = new SqlConnection(efContext.Connection...?) connection.Open(); etc..
出于集成测试目的,我想在测试夹具设置中手动创建并打开 EntityConnection。调用 Open() 方法时失败并出现以下异常: System.Data.ProviderIncompatible
创建 EF4 EntityConnection 的成本如何?我正在使用 SQL Compact 创建一个 EF4 桌面应用程序,用户将能够使用“文件打开”对话框打开数据库文件。然后我的代码构建一个 E
我在使用 EntityConnection 时收到此错误,我不知道如何解决。使用 ObjectContext 时,我可以设置属性 DefaultContainerName 并且它可以工作,但现在我不知
(这曾经是一个由两部分组成的问题,但由于第二部分确实很重要,所以我决定将其分成两个单独的帖子。请参阅 Using Serialization to copy entities between two
我的大部分数据库操作都使用 Linq2Entity。然而,对于数据库创建、表创建和初始数据插入,我使用纯 SQL 文件。因此我需要一个 SqlConnection 和一个 EntityConnecti
我是一名优秀的程序员,十分优秀!