![](/img/trans.png)
[英]Use EF Core 6 db connection in ADO.NET (Microsoft.Data.Sql)
[英]EF Core 2.1 - Handling connection on parallel async methods
我的 DbContext 中有多个异步方法来调用存储过程。 所有这些方法处理连接如下。
DbConnection connection = this.Database.GetDbConnection();
bool needClose = false;
if (connection.State != ConnectionState.Open)
{
connection.OpenAsync();
needClose = true;
}
}
try {}
finally
{
if (needClose)
connection.Close();
}
我正在并行调用其中一些方法。 我的连接字符串有 MultipleActiveResultSets=True。 我收到以下错误,因为连接被另一种方法关闭。
无效操作。 连接已关闭
什么是更好的方法呢? 提前致谢。
目前我正在关闭处理连接。 这看起来不错的样子。 但是,如果您有任何其他建议,请告诉我。
public override void Dispose()
{
DbConnection connection = Database.GetDbConnection();
if (connection.State != ConnectionState.Closed)
{
connection.Close();
}
base.Dispose();
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.