1. 程式人生 > 其它 >Linq 查詢資料時用AsNoTracking()在修改實體提交不會寫入資料庫

Linq 查詢資料時用AsNoTracking()在修改實體提交不會寫入資料庫

技術標籤:EFc#

用AsNoTracking(),那代表ef不在繼續跟蹤資料的狀態。
當你需要修改時,那麼需要保持跟蹤,使用attach

public virtual T update(T date)
        {
            dbEF.Set<T>().Attach(date);
            dbEF.Entry<T>(date).State = System.Data.Entity.EntityState.Modified;
            dbEF.SaveChanges();
            return entity;
        }