ASP.NET使用JQUERY AJAX文件上传DEMO_异步文件上传例子
2017-12-08 15:07
465 查看
转载于:http://dditblog.com/itshare_195.html
本文提供了一种简单的ASP.NET Web API的文件上传方式、使用jQuery AJAX的方式上传图片文件
接下来我将展示如何添加一个Web API的控制器、以及使用它上传文件
步骤:
1、添加一个空的ASP.NET Web应用程序,我使用了Visual Studio2013创建了这个演示应用程序
2、然后在接下来的窗口使用ASP.NET Web应用程序的类型、选择“空”、然后单击“确定”按钮
这样一个空的Web应用程序就创建好了,其中包含packages.config和Web.config文件
3、添加“Global.asax”文件,该文件是为ASP.NET Web应用程序是必不可少的、在Visual Studio中用鼠标右键单击该项目
选择添加 ->新建项目->添加新项、从列表中选择“Global Application Class”文件
4、接着我们要添加ASP.NET Web API包到项目中、右键单击该项目、选择“管理的NuGet包”
5、现在我们已经成功地安装了Web API包、让我们添加一个简单的类,作为控制器管理文件的上传
用鼠标右键单击该项目,选择添加 ->类、将它命名为、如“FileUploadController.cs”
6、增加了控制器、我们需要注册这个控制器的路由、这时就要用到“Global.asax.cs”文件了
7、在FileUploadController.cs文件中添加一个操作方法(action)、将处理文件上传操作
8、添加一个aspx网页、做为上传文件的页面、并添加代码
9,加入jQuery代码来保存文件
本文提供了一种简单的ASP.NET Web API的文件上传方式、使用jQuery AJAX的方式上传图片文件
接下来我将展示如何添加一个Web API的控制器、以及使用它上传文件
步骤:
1、添加一个空的ASP.NET Web应用程序,我使用了Visual Studio2013创建了这个演示应用程序
2、然后在接下来的窗口使用ASP.NET Web应用程序的类型、选择“空”、然后单击“确定”按钮
这样一个空的Web应用程序就创建好了,其中包含packages.config和Web.config文件
3、添加“Global.asax”文件,该文件是为ASP.NET Web应用程序是必不可少的、在Visual Studio中用鼠标右键单击该项目
选择添加 ->新建项目->添加新项、从列表中选择“Global Application Class”文件
4、接着我们要添加ASP.NET Web API包到项目中、右键单击该项目、选择“管理的NuGet包”
5、现在我们已经成功地安装了Web API包、让我们添加一个简单的类,作为控制器管理文件的上传
用鼠标右键单击该项目,选择添加 ->类、将它命名为、如“FileUploadController.cs”
public class FileUploadController : ApiController
6、增加了控制器、我们需要注册这个控制器的路由、这时就要用到“Global.asax.cs”文件了
GlobalConfiguration.Configure(config => { config.MapHttpAttributeRoutes(); config.Routes.MapHttpRoute( name: "DefaultApi", routeTemplate: "api/{controller}/{action}/{id}", defaults: new { id = RouteParameter.Optional } ); });
7、在FileUploadController.cs文件中添加一个操作方法(action)、将处理文件上传操作
[HttpPost]
public void UploadFile() { if (HttpContext.Current.Request.Files.AllKeys.Any()) { // Get the uploaded image from the Files collection var httpPostedFile = HttpContext.Current.Request.Files["UploadedImage"]; if (httpPostedFile != null) { // Validate the uploaded image(optional) // Get the complete file path var fileSavePath = Path.Combine(HttpContext.Current .Server.MapPath("~/UploadedFiles"), httpPostedFile.FileName); // Save the uploaded file to "UploadedFiles" folder httpPostedFile.SaveAs(fileSavePath); } } }
8、添加一个aspx网页、做为上传文件的页面、并添加代码
<div> <label for="fileUpload">Select File to Upload: </label> <input id="fileUpload" type="file" /> <input id="btnUploadFile" type="button" value="Upload File" /> </div>
9,加入jQuery代码来保存文件
$(´#btnUploadFile´).on(´click´, function () { var data = new FormData(); var files = $("#fileUpload").get(0).files; if (files.length > 0) { data.append("UploadedImage", files[0]); } var ajaxRequest = $.ajax({ type: "POST", url: "/api/fileupload/uploadfile", contentType: false, processData: false, data: data }); ajaxRequest.done(function (xhr, textStatus) { // Do other operation }); });
相关文章推荐
- Asp.net + js 异步上传文件的例子 - 使用iframe实现
- ASP.NET MVC 使用Uploadify实现多文件异步无刷新上传
- asp.net 中使用JQuery Ajax 上传文件
- 使用ASP.NET WEB API文档来上传异步文件
- asp.net 中使用JQuery Ajax 上传文件
- ASP.NET 2.0使用FileUpload控件上传文件示例
- ASP.NET 2.0使用FileUpload控件上传文件示例
- asp.net下实现支持文件分块多点异步上传的 Web Services
- 使用ASP.NET上传多个文件到服务器
- FCKeditor是使用非常广泛的HTML编辑器,本文从 ASP.NET 的使用场景对 FCKeditor 与 FCKeditor.NET 的配置、功能扩展(如自定义文件上传子目录、自定义文件名、上传图片的后期处理等)、以及安全性进行初步的阐述。
- asp.net下实现支持文件分块多点异步上传的 Web Services
- asp.net下实现支持文件分块多点异步上传的 Web Services
- ASP.NET使用SWFUpload上传大文件教学(源码) (转)
- ASP.NET使用SWFUpload上传大文件教学
- 使用WinInet向 ASP.Net Web服务器 多线程上传文件
- ASP.Net文件上传研究开篇之—— 不使用服务器控件的文件上传
- asp.net下使用DIME协议上传文件
- ASP.NET同时上传多个文件,和不使用HTMLFileInput上传的方法(resource about file upload)
- ASP.NET使用SWFUpload上传大文件教学(源码)
- Asp.NET大文件上传组件开发总结(六)---大文件上传组件使用说明