ANe*_*ves 15 c# asp.net-mvc anonymous-types
我试图声明一个名为的属性的匿名类型data-maxchars.
因为减号是一个运算符,它会将我想要的属性名称降级(?)到一个操作中,并且我得到一个编译错误: Invalid anonymous type member declarator.
我知道我可以使用@来逃避保留字,但我无法弄清楚是否有任何方法可以逃避减号.
object attributes = (object)new { @class = "foo" } // OK
Run Code Online (Sandbox Code Playgroud)
匿名类型作为object参数传递给TextAreaExtensions.TextArea : <%= Html.TextArea(Model.Field.Id, val, rows, cols, attributes)%>. 这将生成具有传递属性的输入.
我想使用JS渐进增强来限制用户可以插入的字符数.
所以我data-在我的属性上使用前缀:http://ejohn.org/blog/html-5-data-attributes/
但如果有办法使用有趣的属性名称,我想学习它.
Jul*_*ain 23
从ASP.NET MVC 3开始,您可以使用下划线(_),它将自动替换-为HTML生成.魔术完成了HtmlHelper.AnonymousObjectToHtmlAttributes.
例如: new { data_abc = "def" }将生成为data-abc="def".