Html.BeginRouteForm接受字符集属性

本文关键字:字符集 属性 BeginRouteForm Html | 更新日期: 2023-09-27 18:22:47

我正在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字符集中的破折号。如何允许C#中的对象属性带有短划线?

Html.BeginRouteForm接受字符集属性

在属性名称中使用下划线: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"/>
}

来源:如何在ASP.NET MVC 中的HTML-5数据-*属性中使用破折号