我正在尝试使用类似于以下代码段的foreach循环找到进行多记录更新的方法。此代码段不适用于值类型。如果有人想在MVC框架中分享他们的多记录更新经验。提前致谢
public ActionResult UpdateProductPrice()
{
var products = _rep.GetProducts();
foreach (Product p in products)
{
decimal oPrice = p.Price;
p.Price = oPrice * .15
UpdateModel(p);
_rep.Save();
}
return View("Index");
}
答案 0 :(得分:1)
您在更改p.Price后调用UpdateModel。如果控制器的当前值提供程序具有映射到Price的属性,则在UpdateModel调用期间您的更改将丢失。