我有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);
}
这是web 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;
}
}
}
答案 0 :(得分:0)
我可以使用FromFile方法解决问题。
System.Drawing.Image image = System.Drawing.Image.FromFile(filePost.FileName);
看起来在我使用FromStream方法后,流已关闭且无法发布文件。