Я использую следующий код, пытаясь преобразовать мой BitmapImage в байт [], чтобы я мог сохранить его в моей базе данных MS SQL.
public static byte[] BufferFromImage(BitmapImage img)
{
if (img == null)
return null;
byte[] result = null;
using (Stream stream = img.StreamSource)
{
if (stream != null && stream.Length > 0)
{
using (BinaryReader br = new BinaryReader(stream))
{
result = br.ReadBytes((int)(stream.Length));
}
}
}
return result;
}
К сожалению, это не работает, так как img.StreamSource удаляется, когда я пытаюсь получить к нему доступ в операторе if, что приводит к исключению «Не удается получить доступ к удаленному файлу».* Мой звонок: BufferFromImage(imgLogo.Source as BitmapImage);
Как мне избежать этого?