asp.net 我遇到代码优先方法验证错误,您能帮助我吗

8ehkhllq  于 2023-02-01  发布在  .NET
关注(0)|答案(1)|浏览(118)

我有一个ASP.NETMVCWeb项目。我想添加验证。
这是我的代码:

[Column(TypeName = "Varchar")] 
[StringLength(30)] 
public string CariAd { get; set; }

编辑后:

[Column(TypeName = "Varchar")]
[StringLength(30, ErrorMessage ="You should write 30 characters")]
public string CariAd { get; set; }

打开了软件包管理器控制台并使用

update-database -Force

并成功地运行了它。
但是当我写了31个字符时,我在等待一个错误消息,但是什么也没有发生。
一个或多个实体的验证失败。有关详细信息,请参见"EntityValidationErrors"属性。

b4wnujal

b4wnujal1#

看起来您已经将验证规则添加到了模型中,但是您遇到的错误消息指示验证由于某种原因而失败。
一个可能的原因是您没有在ASP.NET MVC项目中启用客户端验证。要启用客户端验证,您需要在Razor视图中添加以下代码:

@section Scripts {
    @Scripts.Render("~/bundles/jqueryval")
}

此外,请确保Web.config文件中存在以下代码:

<appSettings>
  <add key="ClientValidationEnabled" value="true"/>
  <add key="UnobtrusiveJavaScriptEnabled" value="true"/>
</appSettings>

如果已经启用了客户端验证,您可以尝试暂时禁用它,以查看是否出现了您所期望的错误消息。
如果问题仍然存在,还可以尝试检查EntityValidationErrors属性,以获取有关验证错误的详细信息。

相关问题