【问题标题】:Create Submit Error: Validation failed for one or more entities. See 'EntityValidationErrors' property for more details创建提交错误:一个或多个实体的验证失败。有关更多详细信息,请参阅“EntityValidationErrors”属性
【发布时间】:2019-08-19 11:59:05
【问题描述】:

我遇到了一个错误

一个或多个实体的验证失败。有关更多详细信息,请参阅“EntityValidationErrors”属性。

尝试在简单的创建页面上提交时。下面是控制器代码和型号。我无法弄清楚问题是什么。

除了 ID 之外的所有字段在 SQL 中都可以为空。我知道问题来自现场解决方案和技术人员 - 如果我将它们放在创建表单上(他们现在不在表单上,​​因为我不希望它们填写)提交工作正常有什么想法吗?

谢谢, 乙

控制器:

public ActionResult Create()
{
    HelpDesk b1 = new HelpDesk();
    return View(b1);
}

[HttpPost]
public ActionResult Create(HelpDesk model)
{
    db.HelpDesks.Add(model);
    db.SaveChanges();
    return RedirectToAction("Index");
}

型号:

public int ID { get; set; }
[DisplayName("Requested By")]
public string RequestedBy { get; set; }
[Required(ErrorMessage = "Requested By Required.")]
public string Request { get; set; }
[Required(ErrorMessage = "Request Required.")]
public string Resolution { get; set; }
[DisplayName("Assigned To")]
public string Technician { get; set; }
public string Status { get; set; }
public string CreatedBy { get; set; }
public string ModfiedBy { get; set; }
public Nullable<System.DateTime> CreateDate { get; set; }
public Nullable<System.DateTime> ModifiedDate { get; set; }

【问题讨论】:

  • 您正在从视图中填充模型对象的请求和分辨率属性中的值?检查表单是否有正确的输入绑定到正确的模型属性,以及表单是否提交给正确的控制器操作。哪一行代码抛出错误?
  • 那些“EntityValidationErrors”告诉你什么?这些通常包含有关哪些字段导致错误的详细信息......

标签: asp.net-mvc


【解决方案1】:

除了 ID 之外的所有字段在 SQL 中都可以为空。

这不是您告诉 Entity Framework 的内容,而是引发错误的原因。 (并且,正如错误所示,您应该真正检查异常或内部异常的 EntityValidationErrors 属性以获取有关错误的特定信息。)您告诉 Entity Framework 这些字段是必需的:

[Required(ErrorMessage = "Requested By Required.")]
public string Request { get; set; }

[Required(ErrorMessage = "Request Required.")]
public string Resolution { get; set; }

(从上面的消息来看,您可能混淆了某些属性属性。)

我知道问题出在字段解析和技术人员身上 - 如果我将它们放在创建表单上(现在它们不在上面,因为我不希望它们填写)提交工作正常

听起来这就是问题所在。 Resolution 被标记为必填项,您不包括它。要么包括它,要么不让它成为必需。

【讨论】:

  • @DavidL 是的。忽略了,谢谢!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2018-01-10
  • 2019-03-20
  • 2011-12-09
  • 1970-01-01
  • 2021-05-25
  • 2013-05-13
  • 2014-02-24
相关资源
最近更新 更多