我遇到了一些问题,似乎无法解决问题......
我有一个包含图像的接口(和实现的类)......
Guid uid { get; set; }
Image imageData1 { get; set; }
string fileName { get; set; }
图像作为byte []存储在DB中,因为我将其反序列化为动态,然后使用我编写的将byte []转换为图像的转换函数填充我想要的对象
问题是另一个方向......
string tmpJson = JsonConvert.SerializeObject( IclassOjbect );
此函数序列化图像的类名。但不是图像数据作为字节数组。
我可以获取图像数据并转换为序列化之外的byte [],但不知道如何将其注入tmpJSON来代替"图像类名称"没有做一些危险的字符串操作......
有没有人对此有任何想法?
答案 0 :(得分:0)
刚刚在谷歌上找到了这个,所以我想我可能会添加一个答案,即使过了这么久:
[JsonIgnore]
public Image Image { get; set; } = null;
public byte[] ImageAsByte
{
get
{
if (this.Image != null)
{
using (var ms = new MemoryStream())
{
this.Image.Save(ms, this.Image.RawFormat);
return ms.ToArray();
}
}
return null;
}
set
{
if (value != null)
{
using (var ms = new MemoryStream(value))
{
this.Image = Image.FromStream(ms);
}
}
}
}