我首先想说对不起,因为我是这种编程语言的新手,所以如果我说或做错了,请原谅我。
我创建了一个包含3个类库的项目(其中1个包含来自sql server的表)。我根据以下教程创建了一个ViewModel:" http://tutlane.com/tutorial/aspnet-mvc/how-to-use-viewmodel-in-asp-net-mvc-with-example",现在我希望能够更新这些表中的数据,但我不知道如何。我尝试做某事但失败了。 `namespace BOL2.ViewModel { 公共课NIRIO { [键] public int ID {get;组; } public int Number {get;组; } public Nullable Date {get;组; }
public int NirID { get; set; }
[DisplayName("TypeID")]
public int TipID { get; set; }
public int SupplierID { get; set; }
public int ProductID { get; set; }
public Nullable<System.DateTime> EntryDate { get; set; }
public Nullable<System.DateTime> ExitDate { get; set; }
public int Quantity { get; set; }
public decimal Price { get; set; }
public decimal Total { get; set; }
public BOL2.tbl_NIR tbnir;
public BOL2.tbl_I_O tblio { get; set; }`
这是我的ViewModel。它包含来自这两个表的数据(tbl_NIR,前3个,以及来自tbl_I_O的其他表。我在研究中看到他们有一个存储库类,但是如果我应该为viewmodel做另一个类,或者我现在不做我可以使用我已经拥有的2吗?非常感谢任何帮助。
答案 0 :(得分:0)
You could do something similar to this.
public void UpdateCar(CarViewModel viewModel)
{
using (DataContext context = new DataContext())
{
CarEntity dataModel = context.CarEntities.where(x => x.Id == viewModel.Id).First();
dataModel.Name = viewModel.Name;
dataModel.Type = viewModel.Type;
context.SaveChanges();
}
}
You need to create your model objects from your view model and set the values for the models.
答案 1 :(得分:0)
我不太确定你使用的方法是什么,但是没有用。如果您尝试通过视图更新表,则无法执行此操作。因为你加入了 inform IT explanation 我建议您在数据库中创建存储过程。然后通过代码调用该过程。它安全快速。 explained here