我有一个模型,它有一个属性和一个ReqularExpression
属性,看起来如下.
[RegularExpression(@"^[0-9]{2}\s[a-zA-Z]{3}$", ErrorMessage = "Invalid Facility {NN CCY}")]
public string Facility { get; set; }
然后,部分视图仅具有一个使用上述属性的文本框.
@Html.TextBoxFor(model => model.Facility, new { @class = "form-control",
placeholder = "Should be NN CCY, example: 01 EUR" })
@Html.ValidationMessageFor(model => model.Facility)
死亡的黄色屏幕给了我这个错误:
FormatException:输入字符串格式不正确。 System.Text.StringBuilder.AppendFormat(IFormatProvider提供程序,字符串格式,Object[] args) +14305394 System.String.Format(IFormatProvider provider,String格式,Object[] args) +136 System.Web.Mvc.RegularExpressionAttributeAdapter.GetClientValidationRules() +64 System.Linq.d__14
2.MoveNext() +267 System.Web.Mvc.UnobtrusiveValidationAttributesGenerator.GetValidationAttributes(IEnumerable
1 clientRules,IDictionary2 clientRules) +456 System.Web.Mvc.HtmlHelper.GetUnobtrusiveValidationAttributes(String名称,ModelMetadata元数据) +280
除了占位符之外,fiels没有填充任何内容,我得到了这个错误,它突出显示了@Html.TextBoxForLine
。删除属性解决了问题,我在这里遗漏了什么?
发布于 2015-11-09 05:54:08
通过一些进一步的调查,我发现了这个问题,这篇文章给了我一个提示,告诉我在字符串中使用大括号的StringBuilder.AppendFormat
。我的ErrorMessage
“无效设施{NN }”包含大括号,我用括号替换了这些大括号,现在起作用了。
我现在就把这个留在这里,以防其他人遇到类似的令人沮丧的问题。
https://stackoverflow.com/questions/33610421
复制相似问题