0
这里是我的控制器操作:实体框架验证错误实体上不被修改
public JsonResult Add(Mod.Payment payment)
{
if (ModelState.IsValid)
{
Ent.Payment paymentEnt = new Ent.Payment();
Mapper.Map(payment, paymentEnt);
db.Payments.Add(paymentEnt);
db.SaveChanges();
return Payment(paymentEnt.PaymentId);
} else
{
Response.StatusCode = (int)HttpStatusCode.BadRequest;
return Json(new { Message = "Not OK" });
}
}
db.SaveChanges触发EntityValidationErrors。这些错误不是针对“paymentEnt”实体,而是针对通过导航属性包含在付款“视图模型”和“实体”中的相关实体。
我没有修改这些实体,只有“paymentEnt”。那么,如何让Entity Framework不尝试验证它们或忽略它们的错误?
我可以创建另一个支付ViewModel,排除相关的实体,但这将违反DRY。
@阿信的答复工作,所以我在考虑这个封闭。我会包含更多的代码,但其中有很多,我希望尽可能简洁。但感谢参与。 –