如何在ValidationSummary中显示错误消息,只在属性级别显示*

时间:2017-06-21 19:13:51

标签: asp.net-mvc

这是属性

[[0 0 0 0 1]
 [0 1 1 0 1]
 [0 0 1 0 0]
 [1 0 0 0 1]]
[[ 0.  0.  0.  0.  1.]
 [ 0.  2.  2.  0.  1.]
 [ 0.  0.  2.  0.  0.]
 [ 3.  0.  0.  0.  4.]]

我希望像WebForm一样具有相同的效果,即您可以决定在ValidationSummary中显示错误消息,同时在属性级别显示[Required(ErrorMessage = "Device Name is required")] public string DeviceName { get; set; }

我尝试使用 true false 来玩这个,但错误仍然显示在属性级别:

*

另外,尝试在引号之间添加@Html.ValidationSummary(false, "", new { @class = "text-danger" }) ,但它不起作用。

*

感谢您的帮助

1 个答案:

答案 0 :(得分:0)

您可以尝试创建自定义ValidationMessageFor方法吗?您应该确保在System.Web.Mvc.Html命名空间中声明了静态帮助程序类。

public static class Validator
{
    public static MvcHtmlString YourValidationMessageFor<TModel, TProperty>(this HtmlHelper<TModel> helper, Expression<Func<TModel, TProperty>> expression)
    {
        TagBuilder span = new TagBuilder("span");
        span.InnerHtml = "*"
        span.AddCssClass("error-box");

        return MvcHtmlString.Create(span.ToString(TagRenderMode.Normal));
    }
}

// html
// displays all validation errors as a summary
@Html.ValidationSummary(false, "", new { @class = "text-danger" })  

// displays "*" for all field validations underneath input
@Html.YourValidationMessageFor(model => model.DeviceName)