這是我的代碼:如何使用ExecuteSqlCommand刪除實體框架中的記錄?
using (TransactionScope scope = new TransactionScope(TransactionScopeOption.Required, transactionOption))
{
foreach (ManufacturecodeEntity mcodeEntity in ManufacturecodeEntities)
{
ManufacturecodeEntity pcodeEntity = mcodeEntity.Parent;
pcodeEntity.IsCurrent = true;
UnitOfWork.ManufacturecodeRepository.Update(pcodeEntity);
}
UnitOfWork.DbContext.Database.ExecuteSqlCommand("Delete from manufacturecodes where detailstate_id=" + Id.ToString());
UnitOfWork.SaveChanges();
scope.Complete();
}
但是當我跑到方法ExecuteSqlCommand
,我的應用程序將停止,然後引發超時異常。
我使用ExecuteSqlCommand
來刪除記錄,因爲記錄超過1500,如果我使用實體框架Delete
和SaveChanges
方法,它會花費60s,我無法接受結果。
所以我嘗試ExecuteSqlCommand
方法來提高性能。現在看來有什麼問題了。
請幫助我,謝謝。
相同的結果,超時異常 – user2155362