Antworten:
Im Rahmen von htmlAttributes, z
Html.BeginForm(
action, controller, FormMethod.Post, new { enctype="multipart/form-data"})
Oder Sie können nullfür Aktion und Controller übergeben, um dasselbe Standardziel wie für BeginForm () ohne Parameter zu erhalten:
Html.BeginForm(
null, null, FormMethod.Post, new { enctype="multipart/form-data"})
Sie können auch die folgende Syntax für die stark typisierte Version verwenden:
<% using (Html.BeginForm<SomeController>(x=> x.SomeAction(),
FormMethod.Post,
new { enctype = "multipart/form-data" }))
{ %>
Ich weiß, dass dies alt ist, aber Sie könnten eine benutzerdefinierte Erweiterung erstellen, wenn Sie dieses Formular immer wieder erstellen müssten:
public static MvcForm BeginMultipartForm(this HtmlHelper htmlHelper)
{
return htmlHelper.BeginForm(null, null, FormMethod.Post,
new Dictionary<string, object>() { { "enctype", "multipart/form-data" } });
}
Nutzung wird dann einfach
<% using(Html.BeginMultipartForm()) { %>