Я пытаюсь передать список файлов в контроллер WebApi вместе с фактическим объектом:
Вот моя модель:
public class StudentModel
{
public long StudentId { get; set; }
public string FirstName { get; set; }
public string DOB { get; set; }
public List<HttpPostedFileBase> files { get; set; }
}
Вот мой контроллер Web API:
[HttpPost]
[Route("api/Student/UploadFile")]
public HttpResponseMessage UploadFile(HttpPostedFileBase[] files)
{
try
{
var httpContext = HttpContext.Current;
// Check for any uploaded file
if (httpContext.Request.Files.Count > 0)
{
//Loop through uploaded files
for (int i = 0; i < httpContext.Request.Files.Count; i++)
{
HttpPostedFile httpPostedFile = httpContext.Request.Files[i];
if (httpPostedFile != null)
{
// Construct file save path
var fileSavePath = Path.Combine(HostingEnvironment.MapPath(ConfigurationManager.AppSettings["fileUploadFolder"]), httpPostedFile.FileName);
// Save the uploaded file
httpPostedFile.SaveAs(fileSavePath);
}
}
}
}
catch (Exception ex)
{
// return Request.CreateErrorResponse(HttpStatusCode.BadRequest, "Internal Server Error");
}
return Request.CreateResponse(HttpStatusCode.OK, "File Uploaded!");
}
Files.count всегда равен нулю, когда я пытаюсь использовать заголовок настройки почтальона Content-Type в качестве данных формы MultiPart и загружать файл в ключ настройки тела в виде файлов.
Почему я не могу получить файл в контроллере webApi?