.Net mvc 上传多文件

.net mvc 上传多文件有很多种方式,我的方法只是其中一种, 仅供参考,我主要是注重参数传递的过程,后面文件保存的地方省略。。

调试环境 vs2017 

控制器代码:

       [HttpPost]
        public ActionResult Upload(Int32 entityId, HttpPostedFileBase[] files)
        {
            for (int i = 0; i < Request.Files.Count; i++)
            {
                files[i] = Request.Files[i];
            }
       //这里得到了
HttpPostedFileBase[] files
       return JsonOK("成功"); 
}

js代码

<script>
    $("#btnok").click(function () {

        var file = new FormData();
        var pic = $('#files')[0].files;
        for (i = 0; i < pic.length; i++) {
            console.log(pic[i])
            file.append('files', pic[i]);
        }
        //file.append('entityId',@id); 除了上传文件之外 上传的别的参数
        $.ajax({
            url: "/../Upload",//这里是控制器加方法名
            data: file,
            type: 'post',
            datatype: 'json',
            // XMLHttpRequest会对 formdata 进行正确的处理
            processData: false,
            //必须false才会自动加上正确Content-Type
            contentType: false,
            success: function (data) {
                console.log(data);
            }
        })
    });
</script>

html代码

    <div>
        <input type="file" name="files" class="file" id="files" size="28" multiple />
        <input id="btnok" class="cube-file" type="button" value="上传"/>
    </div>

猜你喜欢

转载自www.cnblogs.com/shichina/p/10772290.html