我有一个程序可以在MySql DB中插入数千条记录。由于各种原因,不能批量完成操作。总的来说,操作非常缓慢。
在查看正在生成的SQL之后,我可以看到EF正在调用select来获取最近插入的记录的Id。
SET SESSION sql_mode = 'ANSI'; INSERT INTO `table`(
'blah') VALUES(
86613784);
SELECT
`id`
FROM `table`
WHERE row_count() > 0 AND `id`= last_insert_id()
由于我不需要那个ID,我如何告诉EF避免通话并节省时间?
仅供参考 - 我已经使用以下语句来加快速度。
Configuration.ValidateOnSaveEnabled = false;
Configuration.AutoDetectChangesEnabled = false;
根据要求,这是用于创建记录的代码。没什么,但如果它有帮助...
using (var ctx = new Tc_TrademarkEntities(_entityFrameworkConnectionString))
{
ctx.case_file.Add(request.Trademark);
ctx.SaveChanges();
}