奇怪的情况:我使用下面的代码得到了一个bulkinsert失败。奇怪的是,如果我将DbContext
名称设置为特定名称,它会起作用,但如果我更改它则会失败。
没有别的,如果我编辑反向poco tt文件,并将DbContext
名称更改为特定名称并保存(重新创建实体框架文件),它可以工作。如果我做同样的事情,但以任何方式改变它,当代码击中bulkinsert()
线时它将失败。
这对我来说完全没有意义。我不能把它设置为工作的,因为工作的已经在同一个项目中使用(我在一个新项目中测试了这个,只是试图找出问题。)
using (var transactionScope = new TransactionScope())
{
db.BulkInsert(recordsToInsert);
db.SaveChanges();
transactionScope.Complete();
}
有任何想法吗?我知道这与表格或字段无关,因为它适用于一个dbcontextname
,而不是任何其他。
编辑:此外,异常堆栈跟踪显示它在这里失败:
at EntityFramework.BulkInsert.ProviderFactory.Get(DbContext context)
Fakhar Ahmad Rasul在评论中发布了解决方案。事实证明,dbcontext名称必须与连接字符串名称相同。谢谢Fakhar!我希望我可以奖励你积分或其他东西。