Viewmodel在添加或插入列表后不更新模型

时间:2018-03-23 08:35:30

标签: mvvm entity-framework-6

我对MVVM和Entity框架相当新,我尝试通过MVVM向SQL数据库添加新记录时遇到了问题。下面是我的viewmodel的第一个也是最后一个部分,它从我的实体框架加载,这个工作正常。

10.9

当我对绑定到viewmodel的视图中的现有数据进行更改并在viewmodel中调用SaveChanges方法时,它每次都会将更改保存回SQL数据库。如果我调用AddASale方法,它会将该销售添加到列表中,但不会刷新绑定到Sales的UI控件,也不会将新创建的销售传递回SQL DB。通过调试,我可以看到在LINQ代码运行时在Sales属性中调用的集合,但是当我通过AddASale代码添加新的销售时它不会触发,这可能是UI不能更新的原因。 。?

任何人都可以提供有关我做错的指导吗?

提前致谢。

亚历

1 个答案:

答案 0 :(得分:0)

首先,在您的上下文中添加新实体并将其保存为:

        Tbl_Sales newsale = new Tbl_Sales
        {
            SALEID = "2018...",
            SALE = "....",
            SALEDESC = "....",
            START = Convert.ToDateTime("12/04/2018"),
            SESSIONS = 2,
            DAYS = 2,
            LOTS = 100,
            FIRSTLOT = 1,
            LASTLOT = 100
        };
        ctx.Tbl_Sales.Add(newsale);
        SaveChanges();

之后,我认为您必须手动刷新列表:

FillSales();

Here, a link to MSDN

希望我帮助你