Только что начал использовать ASP.Net 4.5, и мой API всегда возвращает ошибку внутреннего сервера.Внутренняя ошибка сервера 500 при async upload asp mvc 5
Загрузить API
public class UploadController : ApiController
{
public async Task<HttpResponseMessage> PostFile()
{
if (!Request.Content.IsMimeMultipartContent())
{
throw new HttpResponseException(HttpStatusCode.UnsupportedMediaType);
}
string root = HttpContext.Current.Server.MapPath("~/App_Data/uploads/");
var provider = new CustomMultipartFormDataStreamProvider(root);
try
{
await Request.Content.ReadAsMultipartAsync(provider);
return Request.CreateResponse(HttpStatusCode.OK);
}
catch (System.Exception e)
{
return Request.CreateErrorResponse(HttpStatusCode.InternalServerError, e);
}
}
}
Мой контроллер
var message = new HttpRequestMessage();
var content = new MultipartFormDataContent();
message.Method = HttpMethod.Post;
message.Content = content;
message.RequestUri = new Uri("http://localhost:12345/api/upload/");
var client = new HttpClient();
client.SendAsync(message).ContinueWith(task =>
{
var result = task.Result.ReasonPhrase;
if (task.Result.IsSuccessStatusCode)
{
//do something
}
});
Файлы сохраняются в папке (/ App_Data/добавления /), но почему статус код всегда 500?
Пожалуйста, просветите меня. Благодаря
[Здесь] (http://stackoverflow.com/questions/5193842/file-upload-asp-net-mvc-3-0) файлов загрузить пример. Можете ли вы рассказать больше, когда получите эту ошибку. –
Ссылка является примером синхронной загрузки. Моя реализация асинхронна. – Awoi
Один момент я отправлю асинхронный пример. –