博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Ajax上传文件到C#Action中
阅读量:5290 次
发布时间:2019-06-14

本文共 5094 字,大约阅读时间需要 16 分钟。

 

 

引用js文件包:jquery.form.js可以下载 http://malsup.com/jquery/form/#download

var formEle = $("#DefaultPicture_Create_Form");//一定要form.find不然与查询页面重复                        var defaultPictureName = formEle.find("#DefaultPictureName").val().trim();                        var defaultPictureID = formEle.find("#DefaultPictureID").val();                        $("#DefaultPicture_Create_Form").ajaxSubmit({                            url: "@Url.Action("Save", "DefaultPictureMaintenance")",                            type: "post",                            dataType: 'json',                            data: {                                DefaultPictureName: defaultPictureName,                                DefaultPictureID: defaultPictureID                            },                            beforeSend: function () {                                showLoading();                            },                            success: function (data) {                                    debugger                                if (data.Status == 200) {                                    showOkClose(data.Message);                                    closePopup();                                    DefaultPictureSearch();                                } else {                                    showError(data.Message);                                }                        },                            error: function (aa) {                                debugger;                            alert(aa);                            },                            complete: function () {                                hideLoading();                            }                    });

 

 

 

///         /// 将 Stream 转成 byte[]        ///         ///         /// 
private byte[] StreamToBytes(Stream stream) { byte[] bytes = new byte[stream.Length]; stream.Read(bytes, 0, bytes.Length); // 设置当前流的位置为流的开始 stream.Seek(0, SeekOrigin.Begin); return bytes; } /// /// 检查文件是否合格,不合格返回错误信息,合格返回空字符 /// /// ///
private string CheckUploadFile(HttpPostedFileBase file) { //判断文件必须小于2M 格式必须PNG JPG if (file.ContentType != "image/png" && file.ContentType != "image/jpeg") { return "Upload failed! Picture type can only be JPG or PNG."; } if (file.ContentLength / 1024 > 1024 * 2) { return"Upload failed! Image size can not be greater than 2M."; } return ""; } public ActionResult Save(int DefaultPictureID, string DefaultPictureName, HttpPostedFileBase file) { bool isSaveSuccess = true; var DefaultPicture = new DefaultPictureItem(); if (DefaultPictureID > 0)//编辑 { //编辑时可以运行File为Null,表示用户没有修改图片 var defaultPicModel = _defaultPictureService.GetByID(DefaultPictureID);//获取数据库中的 defaultPicModel.DefaultPictureName = DefaultPictureName; defaultPicModel.UpdateBy = "testUser"; defaultPicModel.UpdateDate = DateTime.Now; if (file!=null) { //判断文件必须小于2M 格式必须PNG JPG var errorMsg = CheckUploadFile(file); if (!string.IsNullOrEmpty(errorMsg)) { return Error(errorMsg); } var fileStream = file.InputStream; defaultPicModel.DefaultPictureContent = StreamToBytes(fileStream); DefaultPicture.DefaultPictureHaskKey = Guid.NewGuid().ToString(); } isSaveSuccess = _defaultPictureService.Update(defaultPicModel); } else {
//新增 if (file == null)//新增的时候文件内容是必须得 { return Error("Upload failed! Image content can not be empty"); } DefaultPicture.DefaultPictureName = DefaultPictureName; DefaultPicture.DefaultPictureHaskKey = Guid.NewGuid().ToString(); DefaultPicture.CreateBy = "testUser"; DefaultPicture.CreateDate = DateTime.Now; DefaultPicture.UpdateBy = "testUser"; DefaultPicture.UpdateDate = DateTime.Now; //获取文件的内容 //判断文件必须小于2M 格式必须PNG JPG var errorMsg = CheckUploadFile(file); if (!string.IsNullOrEmpty(errorMsg)) { return Error(errorMsg); } var fileStream = file.InputStream; DefaultPicture.DefaultPictureContent = StreamToBytes(fileStream); isSaveSuccess = _defaultPictureService.Update(DefaultPicture); } if (isSaveSuccess) { return Success("Save Success"); } else { return Error("Save Failed"); } }

 

 

 

转载于:https://www.cnblogs.com/Tom-yi/p/8405506.html

你可能感兴趣的文章
各个平台的mysql重启命令
查看>>
统计单词,字符,和行
查看>>
蓝牙的几种应用层协议作用
查看>>
《Akka应用模式:分布式应用程序设计实践指南》读书笔记8
查看>>
jQuery垂直滑动切换焦点图
查看>>
Python-S9-Day127-Scrapy爬虫框架2
查看>>
模运算
查看>>
python多线程的使用
查看>>
团队编程项目作业1-成员简介及分工
查看>>
使用Chrome(PC)调试移动设备上的网页
查看>>
UI基础--手写代码实现汤姆猫动画
查看>>
Python+pytesseract+Tesseract-OCR图片文字识别(只适合新手)
查看>>
使用gitbash来链接mysql
查看>>
docker镜像管理基础
查看>>
黑盒测试和百合测试的优缺点对比
查看>>
SecureCRT的使用方法和技巧(详细使用教程)
查看>>
装饰者模式
查看>>
右侧导航栏(动态添加数据到list)
查看>>
用Nginx+Lua(OpenResty)开发高性能Web应用
查看>>
81、iOS本地推送与远程推送详解
查看>>