模型状态.错误由空字符串组成

本文关键字:字符串 状态 错误 模型 | 更新日期: 2023-09-27 18:14:16

我正在编写一个MVC应用程序与窗体上有验证。

当我询问错误时,像这样:

foreach (ModelState modelState in ViewData.ModelState.Values)
{
    foreach (ModelError error in modelState.Errors)
    {
        Debug.WriteLine(error.ErrorMessage);
    }
}

错误返回的错误消息。ErrorMessage是一个空字符串(")。我可以很容易地编写一小段代码来验证错误消息是否都是空字符串,但这是一种hack!

有谁知道这是为什么吗?上下文是一个表单,上面有一些下拉列表。如果我从一个下拉输入中选择一个项目,则返回错误,但如果这些下拉输入保持其默认状态,则验证正常。

谢谢,S

模型状态.错误由空字符串组成

如果你想验证一个模型,你必须使用dataannotation属性,如[Required],你使用这些注解吗?链接

然后你必须确保你的属性ErrorMessage是设置的,或者-如果你使用外部资源,如resx文件-你的ErrorMessageResourceType &链接 ErrorMessageResourceName