Câu trả lời:
Là một phần của htmlAttribut, vd
Html.BeginForm(
action, controller, FormMethod.Post, new { enctype="multipart/form-data"})
Hoặc bạn có thể truyền null
cho hành động và bộ điều khiển để có cùng mục tiêu mặc định như với BeginForm () mà không có bất kỳ tham số nào:
Html.BeginForm(
null, null, FormMethod.Post, new { enctype="multipart/form-data"})
Bạn cũng có thể sử dụng cú pháp sau cho phiên bản được gõ mạnh:
<% using (Html.BeginForm<SomeController>(x=> x.SomeAction(),
FormMethod.Post,
new { enctype = "multipart/form-data" }))
{ %>
Tôi biết điều này đã cũ nhưng bạn có thể tạo tiện ích mở rộng tùy chỉnh nếu bạn cần tạo lại biểu mẫu đó nhiều lần:
public static MvcForm BeginMultipartForm(this HtmlHelper htmlHelper)
{
return htmlHelper.BeginForm(null, null, FormMethod.Post,
new Dictionary<string, object>() { { "enctype", "multipart/form-data" } });
}
Sử dụng sau đó chỉ trở thành
<% using(Html.BeginMultipartForm()) { %>