我需要替换一个名为“data-valmsg-for”的属性。
Razor 不喜欢我的属性名称包含单词“for”这一事实。任何解决方案?我尝试将 @ 或将其放在双引号内,但没有运气。
@Html.ValidationMessage("Quantity", new {data-valmsg-for = "Quantity" + Model.Id})
我需要替换一个名为“data-valmsg-for”的属性。
Razor 不喜欢我的属性名称包含单词“for”这一事实。任何解决方案?我尝试将 @ 或将其放在双引号内,但没有运气。
@Html.ValidationMessage("Quantity", new {data-valmsg-for = "Quantity" + Model.Id})
Razor 不喜欢我的属性名称包含“for”这个词
这并不完全正确。
这是一个C#语法错误;属性名称不能有连字符。
相反,您应该编写data_valmsg_for = "..."
.
HTML 帮助器方法会将下划线转换为连字符。
一种解决方法是提供一个Dictionary<String,String>
,尽管它并不漂亮:
@Html.ValidationMessage("Quantity", new Dictionary<String,String>() { "data-valmsg-for", "Quantity" + Model.Id})