এটি পুরো ওয়েব জুড়ে একটি কুখ্যাত ত্রুটি বলে মনে হচ্ছে। আমার পরিস্থিতি ফিট না হওয়ায় আমি আমার সমস্যার উত্তর খুঁজে নিতে পারিনি। আমি যখন স্ট্রিমে ছবিটি সংরক্ষণ করি তখন একটি ব্যতিক্রম ছুঁড়ে যায়।
অদ্ভুতভাবে এটি একটি পিএনজি দিয়ে পুরোপুরি কাজ করে তবে উপরের ত্রুটিটি জেপিজি এবং জিআইএফ দিয়ে দেয় যা বরং বিভ্রান্তিকর।
বেশিরভাগ অনুরূপ সমস্যাটি অনুমতি ছাড়াই ফাইলগুলিতে চিত্রগুলি সংরক্ষণ করার সাথে সম্পর্কিত। হাস্যকরভাবে সমাধানটি হ'ল আমি যেমন করছি তেমন কোনও মেমরি স্ট্রিম ব্যবহার করা ....
public static byte[] ConvertImageToByteArray(Image imageToConvert)
{
using (var ms = new MemoryStream())
{
ImageFormat format;
switch (imageToConvert.MimeType())
{
case "image/png":
format = ImageFormat.Png;
break;
case "image/gif":
format = ImageFormat.Gif;
break;
default:
format = ImageFormat.Jpeg;
break;
}
imageToConvert.Save(ms, format);
return ms.ToArray();
}
}
ব্যতিক্রম আরও বিশদ। এটি এতগুলি সমস্যার কারণ হ'ল ব্যাখ্যাটির অভাব :(
System.Runtime.InteropServices.ExternalException was unhandled by user code
Message="A generic error occurred in GDI+."
Source="System.Drawing"
ErrorCode=-2147467259
StackTrace:
at System.Drawing.Image.Save(Stream stream, ImageCodecInfo encoder, EncoderParameters encoderParams)
at System.Drawing.Image.Save(Stream stream, ImageFormat format)
at Caldoo.Infrastructure.PhotoEditor.ConvertImageToByteArray(Image imageToConvert) in C:\Users\Ian\SVN\Caldoo\Caldoo.Coordinator\PhotoEditor.cs:line 139
at Caldoo.Web.Controllers.PictureController.Croppable() in C:\Users\Ian\SVN\Caldoo\Caldoo.Web\Controllers\PictureController.cs:line 132
at lambda_method(ExecutionScope , ControllerBase , Object[] )
at System.Web.Mvc.ActionMethodDispatcher.Execute(ControllerBase controller, Object[] parameters)
at System.Web.Mvc.ReflectedActionDescriptor.Execute(ControllerContext controllerContext, IDictionary`2 parameters)
at System.Web.Mvc.ControllerActionInvoker.InvokeActionMethod(ControllerContext controllerContext, ActionDescriptor actionDescriptor, IDictionary`2 parameters)
at System.Web.Mvc.ControllerActionInvoker.<>c__DisplayClassa.<InvokeActionMethodWithFilters>b__7()
at System.Web.Mvc.ControllerActionInvoker.InvokeActionMethodFilter(IActionFilter filter, ActionExecutingContext preContext, Func`1 continuation)
InnerException:
আমি এখনও পর্যন্ত চেষ্টা করেছি ঠিক আছে।
- চিত্রটি ক্লোন করা এবং এটিতে কাজ করা।
- সেই মাইমির জন্য এনকোডারটি পুনরুদ্ধার করা হচ্ছে জেপিগ মানের সেটিংস সহ passing