我正在通过ASP.NET MVC应用程序将CSV导入到SQL数据库中。EntityFramework。删除所有行然后添加新的。异步
我遍历CSV中的所有行,为每个行创建一个等效实体并将其添加到当前上下文中。
如果至少有一行要添加,那么我想从正在写入的表中删除所有现有的行,然后提交新的实体。
我的问题是,它是否是安全的呼吁ExecuteSqlCommandAsync
,而不是等待结果之前,我随后致电await db.SaveChangesAsync();
像这样:
db.Database.ExecuteSqlCommandAsync("delete from tblName");
await db.SaveChangesAsync();
或者我应该await
删除通话之前,我做了保存更改打电话?在这种情况下,我可能会调用非异步版本?
我目前没有在等待它,并且一切似乎都按照预期在本地工作(实际上没有延迟),即现有数据正在被删除并添加了新数据。我担心的是,在解决方案部署时是否还有其他问题需要考虑,Web服务器和SQL服务器不一定在同一个盒子上。