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

asp.net mvc5 与图片

2016-01-29 13:49 549 查看
【第一种方式】  HttpPostedFileBase file

1、前端POST方式提交表单

@using (Html.BeginForm("Upload", "Test", FormMethod.Post, new { enctype = "multipart/form-data" }))

    {

        <input type="file" name="file" />

        <br />

        <input id="ButtonUpload" type="submit" value="提交" />

    }

2、后台[HttpPost]接收

[HttpPost]

public ActionResult Upload(HttpPostedFileBase file)

{

      var fileName = Path.Combine(Request.MapPath("~/Upload"), Path.GetFileName(file.FileName));

      file.SaveAs(fileName);  //保存到这个路径

      string src = "../Upload/" + Path.GetFileName(file.FileName);

      Session["src"] = src;   //跨页面传值

      Session.Timeout = 10;

      return RedirectToAction("Show");

      //Request.MapPath("~/Upload")|C:\Users\Administrator\Documents\Visual Studio 2015\Projects\ImageUpload\ImageUpload\Upload

      //Path.GetFileName(file.FileName)|c.jpg

      //fileName|C:\Users\Administrator\Documents\Visual Studio 2015\Projects\ImageUpload\ImageUpload\Upload\c.jpg

}

3、后台保存之后通过另一个页面显示

public ActionResult Show(string src)

{

     ViewBag.src = Session["src"];

     return View();

}

<img src=@Session["src"] alt="img" />  //或者用ViewBag.src

【第二种方式】ajax

图片在前台转换成流,通过ajax发送到后台,后台接收保存,或者先处理图片再保存【第一种方式】  HttpPostedFileBase file

1、前端POST方式提交表单

@using (Html.BeginForm("Upload", "Test", FormMethod.Post, new { enctype = "multipart/form-data" }))

    {

        <input type="file" name="file" />

        <br />

        <input id="ButtonUpload" type="submit" value="提交" />

    }

2、后台[HttpPost]接收

[HttpPost]

public ActionResult Upload(HttpPostedFileBase file)

{

      var fileName = Path.Combine(Request.MapPath("~/Upload"), Path.GetFileName(file.FileName));

      file.SaveAs(fileName);  //保存到这个路径

      string src = "../Upload/" + Path.GetFileName(file.FileName);

      Session["src"] = src;   //跨页面传值

      Session.Timeout = 10;

      return RedirectToAction("Show");

      //Request.MapPath("~/Upload")|C:\Users\Administrator\Documents\Visual Studio 2015\Projects\ImageUpload\ImageUpload\Upload

      //Path.GetFileName(file.FileName)|c.jpg

      //fileName|C:\Users\Administrator\Documents\Visual Studio 2015\Projects\ImageUpload\ImageUpload\Upload\c.jpg

}

3、后台保存之后通过另一个页面显示

public ActionResult Show(string src)

{

     ViewBag.src = Session["src"];

     return View();

}

<img src=@Session["src"] alt="img" />  //或者用ViewBag.src

【第二种方式】ajax

图片在前台转换成流,通过ajax发送到后台,后台接收保存,或者先处理图片再保存
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  asp.net 图片 mvc