我在DbContext
上拥有一个扩展方法,想要执行SqlBulkCopy
。因此,我需要一个SqlConnection
。然而,从DbContext获取的连接类型是DbConnection
。
在我尝试的几种方法中,包含以下内容:
var connection = new SqlConnection( dbContext.Database.Connection.ConnectionString);
问题在于密码丢失(可能是出于安全原因)。
我尝试的另一件事是向上转换:
var bulk_copy = new SqlBulkCopy( (SqlConnection)dbContext.Database.Connection );
这实际上假设了 DbConnection 是一个 SqlConnection。在这种非常特殊的情况下,它已经出现了问题。我正在使用 MVC MiniProfiler 将连接包装到 EFProfiledDbConnection
中。EFProfiledDbConnection 没有继承自 SqlConnection。
还有其他的想法吗?提前感谢!
DbConnection
强制转换为SqlConnection
。 - Wiktor Zychla