使用ASP.NET MVC上传,重定向结果视图

时间:2009-08-31 16:35:46

标签: asp.net-mvc

我正在尝试使用ASP.NET MVC构建一个上传器,但我遇到了一些问题。

上传程序出现在由jQuery加载的私有窗格中 - 也就是说,它是自己的视图,但无法通过View Path访问。或者它无意 - 无论哪种方式,我都需要在上传完成后不要更改页面。

有没有办法做到这一点?

        [AcceptVerbs(HttpVerbs.Post)]
    public void FileUpload(HttpPostedFileBase uploadFile)
    {
        if (uploadFile.ContentLength > 0)
        {
            string filePath = Path.Combine(HttpContext.Server.MapPath("/Uploads"),
                                           Path.GetFileName(uploadFile.FileName));
            uploadFile.SaveAs(filePath);
        }
    }

<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl" %>

<script type="text/javascript">
  $(function() {
    $("#tabs").tabs();
  });
</script>

<div id="tabs">
  <ul>
    <li><a href="#create">Upload</a></li>
  </ul>
  <div id="create">
    <h2>
        FileUpload</h2>
    <% using (Html.BeginForm("FileUpload", "Management",
                FormMethod.Post, new { enctype = "multipart/form-data" }))
 {%>
    <input name="uploadFile" type="file" />
    <input type="submit" value="Upload File" />
    <%} %>
  </div>
</div>

1 个答案:

答案 0 :(得分:1)

您需要做的是异步执行文件上传,以便页面不会回发。

以下是关于jQuery异步文件上传的问题: How can I upload files asynchronously?