我有一个android客户端和asp.net服务器,正在使用Web api 2。 我想将服务器中的图像返回到客户端作为响应的一部分,我的意思是我的响应对象是:
public class Product
{
public int Id { get; set; }
public string Name { get; set; }
public string Category { get; set; }
public decimal Price { get; set; }
}
现在我希望我的对象看起来像:
public class Product
{
public int Id { get; set; }
public string Name { get; set; }
public string Category { get; set; }
public decimal Price { get; set; }
public string Image { get; set; }
}
这样string Image
是服务器解决方案中包含图像的文件夹中的图像。
我该怎么做?
(我不知道如何定义图像对象,所以我将其定义为字符串)
答案 0 :(得分:1)
要获取实际图像为字符串,您当然需要对其进行编码,您可以尝试对它进行base64编码-这将使您可以将其作为字符串:
byte[] imageBits = System.IO.File.ReadAllBytes(@"/path/to/image");
string imageBase64 = Convert.ToBase64String(imageBits);
然后显示它,您可以使用<img src="data:yourBase64StringHere" />
,也可以将其解码回实际图像:
var img = Image.FromStream(new MemoryStream(Convert.FromBase64String(imageBase64)));