public async Task <HttpResponseMessage> ImportExcelFile() { HttpResponseMessage response = new HttpResponseMessage(HttpStatusCode.OK); if (!Request.Content.IsMimeMultipartContent()) { response.StatusCode = HttpStatusCode.UnsupportedMediaType; } else { MultipartMemoryStreamProvider provider = new MultipartMemoryStreamProvider(); await Request.Content.ReadAsMultipartAsync(provider); Task <byte[]> fileData = provider.Contents.First().ReadAsByteArrayAsync(); int formId = int.Parse(((System.Web.HttpContextWrapper)Request.Properties["MS_HttpContext"]).Request.Form["formId"]); FormExcelImportResult result = FormsBLL.SubmitExternalFormFromExcel(fileData.Result, formId); response.Content = new ObjectContent <FormExcelImportResult>(result, new JsonMediaTypeFormatter()); } return(response); }