簡體   English   中英

實體框架保存更改列表<>

[英]Entity Framework Save changes List<>

我剛剛開始使用MVVM。 關於此還有很多主題。 但是我看不到樹木的木頭...

這是一個基本問題(初學者@ EF和MVVM)

我的ViewModel中有一個List<Klanten> 您應該可以編輯此列表。 當列表被編輯后,我希望能夠將更改保存到數據庫中。

在使用MVVM之前,我將執行以下操作:

_entities.SaveChanges();

但是現在我的數據在列表中更改,而不是在上下文自身中更改。 我想知道如何以適當的方式將對列表的更改反映到數據庫中。

我找到了一些答案,他們在其中使用上下文檢查了列表的每個對象,以檢查是否已更改或添加了某些內容。 但我不喜歡這種解決方案,還有其他更好的方法嗎? 還是我應該堅持那個解決方案。

隨時發布有關它的博客(或其他內容),我想了解更多。

謝謝,布萊希特

有人必須進行更改跟蹤嗎? 實體在知道更改之前不知道任何更改,因此您可以給它提供整個列表,然后讓它添加/更新每個列表,也可以按照“一些答案”的建議自己進行跟蹤。 恐怕真的沒有神奇的方法了:(

多謝你們! 所以我猜沒有魔術吧:)

我這樣做解決了:

    DataEntities ctx = new DataEntities();
    public List<Klant> Klanten
    {
        get { return ctx.Klanten.ToList(); }
    }

    public void AddKlant(Klant k)
    {
        ctx.Klanten.Add(k);
        ctx.SaveChanges();
        Refresh();
    }

    public void Refresh()
    {
        ViewSource.Source = Klanten;
    }

暫無
暫無

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

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