如何将 C# 图像源存储到数据库中?

How to store c# imagesource into database ?

如何将BitmapImage类型的ImageSource存储到图片类型的数据库中

只需将其转换为字节数组并在数据库中将图像定义为 varbinary(MAX)
您可以使用此代码:

public static Byte[] ConvertToByteFromBitmapImage(BitmapImage bitmapImage)
{
    byte[] data;
    JpegBitmapEncoder encoder = new JpegBitmapEncoder();

    encoder.Frames.Add(BitmapFrame.Create(bitmapImage));
    using(MemoryStream ms = new MemoryStream())
    {
        encoder.Save(ms);
        data = ms.ToArray();
    }

    return data;
}

注意:您可以使用 ans 简单地将 BitmapImage 转换为 ImageSource

Stream stream = File.OpenRead("<your filePath>");
 var buffer = new byte[stream.Length]; 
 stream.Read(buffer, 0, (int) stream.Length);

现在您可以将缓冲区保存到数据类型为 varbinary(MAX) 的列中。 如果你把它们存储在块中就好了。