entity-framework - 我应该在原始查询后关闭实体框架 dbcontext 连接吗?
问题描述
我正在使用实体框架数据库原始查询。
using var command = context.Database.GetDbConnection().CreateCommand();
command.CommandText = "select * from my_school";
using var dataReader = command.ExecuteReader();
var dataRow = ReadSchools(dataReader);
command.Connection.Close();????
阅读结果后dataReader
,我应该关闭连接还是使用语句在作用域后关闭连接?如果我不关闭,连接池是否已满?
解决方案
您可以使用using
如下DBConnection
:
using (var conn = context.Database.GetDbConnection())
{
var command = conn.CreateCommand();
command.CommandText = "select * from my_school";
var dataReader = command.ExecuteReader();
var dataRow = ReadSchools(dataReader);
}
有关更多详细信息,请查看使用 DbContext
推荐阅读
- asp.net-core-2.0 - 如何在 net core 2.0 中按名称对本地用户进行排序?
- javascript - 如何从承诺中检索价值
- git - 使用带有 GIT 的 Spring 云配置读取配置时出现问题
- typescript - 文档的语法
- batch-file - 搜索文件标题并相应地重命名文件
- ruby-on-rails - rails 5.1.4 assert_select 'li',只检查第一个 li
- angular - Angular v6 SwalAlert2 总是显示一个复选框。我没有把它放在那里。我该如何解决?
- ubuntu - 在不同的操作系统上编译 LateX 文件时出现额外的 fi 错误
- flatbuffers - 如何将已经序列化的字节缓冲区添加到正在创建表向量的构建器?
- javascript - 获取外部js文件Javascript中单击的html元素的类名