数据库初始化期间验证失败
此错误通常发生在尝试在数据库播种过程中插入数据时,并且输入数据不符合定义的验证规则。在本例中,在播种过程中遇到了八个验证错误。
错误消息提示您检查“EntityValidationErrors”属性以获取更多详细信息。要访问这些错误,您可以按照以下步骤操作:
获得 EntityValidationErrors 集合后,您可以遍历它并查看每个验证失败实体的具体错误消息。
访问验证错误
要在 catch 块中查看实际的验证错误,您可以使用如下代码:
<code class="language-c#">try { //您的代码... context.SaveChanges(); } catch (DbEntityValidationException e) { foreach (var eve in e.EntityValidationErrors) { Console.WriteLine("类型为 \"{0}\" 的实体,状态为 \"{1}\",具有以下验证错误:", eve.Entry.Entity.GetType().Name, eve.Entry.State); foreach (var ve in eve.ValidationErrors) { Console.WriteLine("- 属性:\"{0}\",错误:\"{1}\"", ve.PropertyName, ve.ErrorMessage); } } throw; }</code>
此代码将输出每个验证错误的详细信息,包括实体类型、属性名称和错误消息。
验证错误示例
验证错误的一个可能原因是 ApplicantPosition 表中缺少或无效的状态值。在尝试保存对数据库的更改之前,请确保 StatusID 属性设置为有效的状态 ID。
以上是如何调试'验证”在数据库初始化期间失败”实体框架中的错误?的详细内容。更多信息请关注PHP中文网其他相关文章!