从c#动态显示asp.net中的图像

Ann*_*i S 1 c# asp.net wcf image bytearray

我在我的asp.net网站的c#代码中动态创建控件.我想创建一个图像控件并显示一个从wcf服务获得的字节数组派生的图像.我试图将字节数组转换为图像并保存在具有以下代码的位置,但它不起作用.谁能帮我!

 public System.Drawing.Image byteArrayToImage(byte[] byteArrayIn)
{
    MemoryStream ms = new MemoryStream(byteArrayIn);
    System.Drawing.Image returnImage = System.Drawing.Image.FromStream(ms);
    return returnImage;
}
Run Code Online (Sandbox Code Playgroud)

Bla*_*hma 5

你刚刚错过了Save方法:

public string byteArrayToImage(byte[] byteArrayIn)
{
  string saveLocation = "<Path to save image to>"; // e.g. c:\mywebsite\image23.png
  MemoryStream ms = new MemoryStream(byteArrayIn);
  System.Drawing.Image returnImage = System.Drawing.Image.FromStream(ms);
  returnImage.Save(saveLocation);
  return saveLocation;
}
Run Code Online (Sandbox Code Playgroud)

然后使用Server.MapPath将保存的文件位置的url传递给asp:Image控件.

我应该提到的是,如果你已经有了一个字节数组- 而不是创建一个image只为保存字节流对象 -只是把字节流里面ImageUrl的的asp:image这样的控制:

image1.ImageUrl = "data:image/png;base64," + Convert.ToBase64String(byteArrayIn);
Run Code Online (Sandbox Code Playgroud)