我正在使用Image Resizer imageresizing.net。但是,当我尝试上传图像或调整图像大小时,会发生错误:


  源流在末尾(您已经阅读过吗?)。您必须调用stream.Seek(0,SeekOrigin.Begin);在重新使用流之前,或者在第一次读取流时将ImageJob与ResetSourceStream = true一起使用。


using (Stream newFile =  System.IO.File.Create(Path.Combine(_pathResolver.ResolvePath(_appSettings.CompanyLogosDirectory), newFileName)) )
{
     //newFile.Seek(0, SeekOrigin.Begin);

     ImageResizer.ImageJob i = new ImageJob();
     //i.ResetSourceStream = true;
     i = new ImageResizer.ImageJob(logo.InputStream, newFile, new ImageResizer.ResizeSettings("width=120;height=45;format=jpg;mode=max"));

     i.CreateParentDirectory = false; //Auto-create the uploads directory.
     i.Build();
}

最佳答案

您在提供代码之前使用了logo.InputStream(可能用于其他作业)。您可以再次读取图像,也可以在using语句之前的以下代码中添加例外建议:

logo.InputStream.Seek(0, SeekOrigin.Begin);

09-25 13:35