Ошибка загрузки изображения ASP MVC при использовании HttpClient.PostySync

У меня есть веб-страница asp mvc для загрузки изображения, мне нужно проверить ширину и высоту изображения. Я пытаюсь преобразовать изображение из FromStream, а затем отправить его на сервер с помощью метода PostSync. Я не получаю никаких ошибок, но изображение не отправляется на сервер. Если я обхожу метод FromStream, то я не вижу никакой ошибки

    public virtual ActionResult SaveFileConfigure(ConfigurationDto configuration, HttpPostedFileBase filePost)
    {
         System.IO.Stream stream = filePost.InputStream;
         System.Drawing.Image image = System.Drawing.Image.FromStream(stream);
          //check image width here
          WebApiClient.UploadFile(this.FileService, stream, configuration.FileName);
    }

Вот код загрузки веб-API

public static void UploadFile(string serviceUrl, Stream file, string fileName)
        {
            using (var client = new HttpClient())
            {
                using (var content = new MultipartFormDataContent())
                {
                    var fileContent = new StreamContent(file);
                    fileContent.Headers.ContentDisposition = new ContentDispositionHeaderValue("attachment") {
                        FileName = fileName
                    };
                    content.Add(fileContent);

                    var result = client.PostAsync(string.Format("{0}/upload", serviceUrl.TrimEnd('/')), content).Result;
                }
            }
}

person Zeus    schedule 06.03.2015    source источник


Ответы (1)


Я могу решить проблему, используя метод FromFile.

System.Drawing.Image image = System.Drawing.Image.FromFile(filePost.FileName);

Похоже, после того, как я использую метод FromStream, поток закрывается и не может опубликовать файл.

person Zeus    schedule 07.03.2015