无法向验证消息添加属性

时间:2014-07-10 21:23:55

标签: c#

我正在尝试为我的HtmlHelper添加的验证消息添加一个类:

@Html.ValidationMessageFor(
    m => m.Status, 
    htmlAttributes: new { @class = "validation-summary" })

但是我收到了这个错误:

  

CS1739:ValidationMessageFor'的最佳重载没有名为' htmlAttributes'

的参数

但根据documentation,这是正确的参数名称。我不想传递自定义消息。

2 个答案:

答案 0 :(得分:2)

有几个ValidationMessageFor overloads,但没有一个匹配您的代码。您要使用的重载是this,可以像这样调用:

public static MvcHtmlString ValidationMessageFor<TModel, TProperty>(
    this HtmlHelper<TModel> htmlHelper,
    Expression<Func<TModel, TProperty>> expression,
    string validationMessage,
    Object htmlAttributes
)

因此您需要再添加一个参数:

@Html.ValidationMessageFor(
    m => m.Status, 
    null,
    htmlAttributes: new { @class = "validation-summary" })

答案 1 :(得分:0)

您没有使用正确的重载,而是在跳过string validationMessage参数。

@Html.ValidationMessageFor(
    m => m.Status,
    null,
    new { @class = "validation-summary" })

注意我用null替换验证邮件,如果您愿意,您当然可以在此处放置string