2016-08-31 4 views
0

Я пытаюсь отправить загруженный файл excel в web api с помощью XMLHttpRequest, но все, что я получаю в web api, является объектом. Как получить загруженный файл в web api?Невозможно получить данные формы в web api C#

upload(file: File): void { 
     let formData: FormData = new FormData(), 
     xhr: XMLHttpRequest = new XMLHttpRequest(); 
     formData.append("uploads", file, file.name); 
     xhr.open('POST', this._expenseServiceUrl + 'expenses' + '/' + 'massupload', true); 
     xhr.send(formData); 
} 

Web API

 [Route("massupload")] 
     [HttpPost] 
     public HttpResponseMessage MassUpload([FromUri] dynamic uploads) 
     { 
      try 
      { 
       response = Request.CreateResponse(HttpStatusCode.OK, ""); 
      } 
      catch (Exception exception) 
      { 

      } 
      return response; 
     } 
+0

var response = Request.CreateResponse (HttpStatusCode.OK, ""); – Sami

ответ

0

Вы можете прочитать загруженный файл из Request.Files

foreach (string fileId in Request.Files) 
{ 
    HttpPostedFileBase file = Request.Files[fileId] as HttpPostedFileBase; 
} 

Кроме того, вы украсили свой параметр uploads с FromUri. Вы также можете изменить это на FromBody, так как ваш файл находится в вашем теле POST, а не в URI.

+0

Request.Files count подходит к нулю. – user728630

Смежные вопросы