Welcome 微信登录

首页 / 网页编程 / ASP.NET / ASP.NET MVC处理文件上传

ASP.NET MVC处理文件上传2011-08-06 vckbase towardsnext在MVC应用中,文件的上传处理比较简单,下面是一个结合JQuery的例子。

<asp:Content ID="Content2" ContentPlaceHolderID="MainContent" runat="server">

<h2>Files uploaded to server</h2>

<div id="dialog" title="Upload files">
<% using (Html.BeginForm("Upload", "File", FormMethod.Post, new { enctype = "multipart/form-data" }))
{%><br />
<p><input type="file" id="fileUpload" name="fileUpload" size="23"/> ;</p><br />
<p><input type="submit" value="Upload file" /></p>
<% } %>
</div>
<a href="#" onclick="jQuery("#dialog").dialog("open"); return false">Upload File</a>
</asp:content>

然后,我们需要根据BeginForm中FileController和action(Upload)在指定的Controller中处理请求, 参考如下代码:

public void Upload(
{
foreach (string inputTagName in Request.Files)
{
HttpPostedFileBase file = Request.Files[inputTagName];
if (file.ContentLength > 0)
{
string filePath = Path.Combine(HttpContext.Server.MapPath("../Uploads")
, Path.GetFileName(file.FileName));
file.SaveAs(filePath);
}
}

RedirectToAction("Index", "File");
}