WebApi file upload and webapi File Upload
1. Add the enctype = "multipart/form-data" attribute to the form. Otherwise, the HttpPostedFileBase object of the Action parameter cannot receive the file.
2. Pay attention to the file size. By default, the size of the files uploaded in IIS is 4 MB. Files larger than this size must be modified in the configuration file.
3. If "js/jquery. mobile. min. js" is referenced, add data-ajax = "false" to the form. Otherwise, the uploaded file cannot be received.
If (! Request. content. isMimeMultipartContent () {throw new HttpResponseException (HttpStatusCode. unsupportedMediaType);} string root = @ "C:/"; var provider = new MultipartFormDataStreamProvider (root); try {StringBuilder sb = new StringBuilder (); var task = Request. content. readAsMultipartAsync (provider); task. wait (); foreach (var file in provider. fileData) {FileInfo fileInfo = new FileInfo (file. localFileName); sb. append (string. format ("Uploaded file: {0} ({1} bytes) \ n", fileInfo. name, fileInfo. length);} return new HttpResponseMessage () {Content = new StringContent (sb. toString () };} catch (System. exception e) {return Request. createErrorResponse (HttpStatusCode. internalServerError, e );}View Code