您的位置:首页 > 编程语言 > ASP

ASP.net MVC FileUpload 文件上传

2010-04-06 10:40 615 查看
ASP.net MVC的上传文件功能并没有其他模块(action,Controller)那么智能、好用,不过也不是很复杂。

打开vs2008 新建一个MVC工程





如果web项目没有asp.net mvc web application的话,请下载 .net MVC

确定后显示Unit Test选项 根据需要选择,这里就选择NO。





首先建立我们上传文件的form,打开





用HTML helper编写一个form,当然也可以用纯HTML

<asp:Content ID="indexTitle" ContentPlaceHolderID="TitleContent" runat="server">
    Home Page
</asp:Content>

<asp:Content ID="indexContent" ContentPlaceHolderID="MainContent" runat="server">
    <h2>File Upload Example</h2>
    <p>
    
        
          File 1:<input type="file" name="file1" id="file1" /><br />
           <input type="submit" id="upload" value="Upload" />
        
    </p>
</asp:Content>

然后编写相应的action,打开



 

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using System.Text;
using System.IO;

namespace FileUpload.Controllers
{
    [HandleError]
    public class HomeController : Controller
    {
        public ActionResult Index()
        {
            //ViewData["Message"] = "Welcome to ASP.NET MVC!";

            return View();
        }
        public ActionResult Upload()
        {
            StringBuilder info = new StringBuilder();
            foreach (string file in Request.Files)
            {
                HttpPostedFileBase postFile = Request.Files[file];//get post file
                if (postFile.ContentLength == 0)
                    continue;
                string newFilePath = @"D:/";//save path
                postFile.SaveAs(newFilePath + Path.GetFileName(postFile.FileName));//save file
                info.AppendFormat("Upload File:{0}/r/n", postFile.FileName);//info
            }
            ViewData["Info"] = info;
            return View("Index");
        }

        public ActionResult About()
        {
            return View();
        }
    }
}
保存后直接运行



 
这样就可以测试了。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
相关文章推荐