Html.BeginRouteForm是accept-charset属性

时间:2013-07-17 15:57:36

标签: c# asp.net-mvc-3 razor

我正在Razor中构建一个表单,如下所示:

@using (Html.BeginRouteForm("foo", new { controller = "foo", action = "bar" }, FormMethod.Post, new { id="foo", enctype="multipart/form-data", accept-charset="utf-8" }))
{       
    <label for="file">File</label>
    <input type="file" name="file" id="file" />
    <input type="submit" value="Send"/>
}

我需要在表单标记中获取一些属性。但编译器不喜欢accept-charset中的破折号。我如何允许C#中的对象属性有破折号?

1 个答案:

答案 0 :(得分:4)

在属性名称中使用下划线:accept_charset

MVC会自动将html属性属性中的下划线转换为破折号:

@using (Html.BeginRouteForm("foo", new { controller = "foo", action = "bar" }, FormMethod.Post, new { id="foo", enctype="multipart/form-data", accept_charset="utf-8" }))
{       
    <label for="file">File</label>
    <input type="file" name="file" id="file" />
    <input type="submit" value="Send"/>
}

信用:How to use dashes in HTML-5 data-* attributes in ASP.NET MVC