簡體   English   中英

實體框架未更新方法中的記錄

[英]Entity Framework not updating record in the method

我在我的ASP.NET MVC網站上使用了EF,但我注意到一個新的actionresult()方法中存在一個“問題”。

在同一動作中,我在同一測試表中有兩個操作。

碼:

  //Break point 01
 _documentRepository.UpdateStatus(documentToUpload.IDDocument, Status.Admin);

 //Break point 02 - Just create this aux var to break here and check the database.
 var aux = 1;

  //Break point 03
 var documents =  documentRepository.GetByID(documentToUpload.IDProtocol).ToList();
 foreach(var doc in documents)
 {  
    if(doc.Status == Status.Admin)
    { 
       //Break point 04
       //Never Breaks here.
    }
 }

斷點02觸發時,我進入數據庫並檢查Document的狀態,它已經等於Status.Admin (正如我在斷點01代碼中所做的更改)。 但是,當我獲得文檔列表時,我會簽入該列表,並且文檔仍處於較舊的狀態。

可能是什么?

編輯:

倉庫代碼:

    public IEnumerable<Document> GetByID(Guid idProtocol)
    {
        return _context.Document.Where(d => d.IDProtocol.Equals(idProtocol));
    }

我找到了解決方案,這是我做錯的。 我正在使用同一個存儲庫對象來執行這兩項操作。 我在Action方法內創建了一個新的DocumentRepository對象,並使用它來獲取文檔列表,然后得到列表更新。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM