我对MVVM和Entity框架相当新,我尝试通过MVVM向SQL数据库添加新记录时遇到了问题。下面是我的viewmodel的第一个也是最后一个部分,它从我的实体框架加载,这个工作正常。
10.9
当我对绑定到viewmodel的视图中的现有数据进行更改并在viewmodel中调用SaveChanges方法时,它每次都会将更改保存回SQL数据库。如果我调用AddASale方法,它会将该销售添加到列表中,但不会刷新绑定到Sales的UI控件,也不会将新创建的销售传递回SQL DB。通过调试,我可以看到在LINQ代码运行时在Sales属性中调用的集合,但是当我通过AddASale代码添加新的销售时它不会触发,这可能是UI不能更新的原因。 。?
任何人都可以提供有关我做错的指导吗?
提前致谢。
亚历
答案 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();
希望我帮助你