Owin:
<HttpPost> Function UploadFileOwin() As IHttpActionResult ‘Owin方式文件上传 If Request.Content.IsMimeMultipartContent("form-data") Then Dim ParentPath As String = System.Environment.CurrentDirectory & "/UploadFiles/" If Not Directory.Exists(ParentPath) Then Directory.CreateDirectory(ParentPath) End If Dim Provider = Request.Content.ReadAsMultipartAsync.Result If Provider.Contents.Count > 0 Then For Each c In Provider.Contents If c.Headers.ContentDisposition.FileName <> "" Then Dim filePath As String = String.Concat(ParentPath, c.Headers.ContentDisposition.FileName.Replace("""", "")) Using fs As FileStream = New FileStream(filePath, FileMode.OpenOrCreate) Using ioStream = c.ReadAsStreamAsync.Result Dim buff As Byte() = New Byte(ioStream.Length) {} Dim co = ioStream.Read(buff, 0, ioStream.Length) Using memStream = New MemoryStream(buff) memStream.WriteTo(fs) Return Ok("上传成功") End Using End Using End Using End If Next End If End If Return Ok("上传失败") End Function
mvc:
<HttpPost> Function UploadFileMVC() As String ‘MVC方式上传文件 Dim result = String.Empty Dim uploadPath As String = HttpContext.Current.Server.MapPath("~/upload/") ‘Dim uploadPath As String = System.Web.Hosting.HostingEnvironment.MapPath("~/upload/") Dim request As HttpRequest = HttpContext.Current.Request Dim fileCollection As HttpFileCollection = request.Files If fileCollection.Count > 0 Then Dim httpPostedFile As HttpPostedFile = fileCollection(0) Dim fileExtension As String = Path.GetExtension(httpPostedFile.FileName) Dim fileName As String = Guid.NewGuid().ToString() + fileExtension Dim filePath As String = uploadPath + httpPostedFile.FileName If Not Directory.Exists(uploadPath) Then Directory.CreateDirectory(uploadPath) End If While File.Exists(filePath) fileName = Guid.NewGuid().ToString() + fileExtension filePath = uploadPath + fileName End While httpPostedFile.SaveAs(filePath) Return "上传成功" End If Return "文件上传失败" End Function