君仙小一时的图片上传

c#图片上传是一种很简单的技术接下来让我们一起来看看吧:

前台页面:

@{
    ViewBag.Title = "Index";
}

<h2>Index</h2>
<script src="~/Scripts/jquery-3.4.1.js"></script>
<script src="~/Scripts/jquery.unobtrusive-ajax.js"></script>

<div class="form-group">
    <label for="crowd_file" class="col-sm-2 control-label">上传文件</label>
    <div class="col-sm-10">
        <input type="file" accept=".jpg" id="crowd_file">
    </div>
</div>
<div class="form-group">

    <div class="col-sm-10">
        <input type="button" value="上传" class="submit" id="crowd_file">
    </div>
</div>

<script>
    $('.submit').click(function () {
             var formData = new FormData();
       formData.append("file", $('#crowd_file')[0].files[0]);

        $.ajax({
            url: '/Home/Index',
            dataType: 'json',
            type: 'POST',
            async: false,
            data: formData,
            processData: false, // 使数据不做处理
            contentType: false, // 不要设置Content-Type请求头
            success: function (data) {
                console.log(data);
                if (data.status == 'ok') {
                    alert('上传成功!');
                }

            },
            error: function (response) {
                console.log(response);
            }
        });
    })
</script>

  后台控制器:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using WebApplication1.Models;
using System.IO;

namespace WebApplication1.Controllers
{
    public class HomeController : Controller
    {
        [HttpGet]
        public ActionResult Index()
        {
            return View();
        }
        [HttpPost]
        public string Index(HttpPostedFileBase file)
        {
            //判断文件是否存在
            if (file != null)
            {
                //写一个文件保存的路径
                string imgpath = Server.MapPath(@"\Img\");
                //判断路径是否存在,不存在则创建
                if (!Directory.Exists(imgpath))
                {
                    Directory.CreateDirectory(imgpath);
                }
                //给文件再起个名
                string ImgName = DateTime.Now.ToString("yyyyMMddHHmmss")+"_"+file.FileName;
                //把文件保存到服务器上
                file.SaveAs(imgpath + ImgName);
                //返回文件的位置
                return @"\Img\" + ImgName;
            }

            return "null";
        }



    }
}

  建表:

using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.Linq;
using System.Web;

namespace WebApplication1.Models
{
    public class UserInfo
    {
        public string Id { get; set; }
    
        public string UserName { get; set; }
   
        public string Address { get; set; }
  
        public HttpPostedFileBase ImgUrl { get; set; }
    }
}

  以上就是用vs实现图片上传的代码,希望对大家有帮助!

posted @ 2020-07-26 20:27  君仙  阅读(143)  评论(1编辑  收藏  举报