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。
@阿信的答覆工作,所以我在考慮這個封閉。我會包含更多的代碼,但其中有很多,我希望儘可能簡潔。但感謝參與。 –