如何动态显示asp.net页面上的字节图像?

问题描述:

我已经从Web服务加载到我的asp.net网站的字节数组图像。 只要执行Web服务,我需要在网页上显示它。如何动态显示asp.net页面上的字节图像?

我一直在使用通用处理器试过,但我不能这样做,因为有没有办法通过字节[]图像到通用处理器

void Button2_Click1(object sender, EventArgs e) 
{ 

    this.verifyTemplates(); 
    byte[] userImg; 
    try 
    { 

     matchTemp.templateService hs = new matchTemp.templateService(); 
     bool s1 = hs.matchTemplates(template, out userID, out userName, out userImg); 
// userImg is the byte image i need to display 

    } 
    catch(Exception exc) 
    { 
    // vLabel.Text = exc.Message; 
    } 
} 
+2

请张贴您的代码。 – Oded 2012-03-23 11:36:37

+0

@oded:ok done :) – 2012-03-23 11:41:08

+1

图像数据来自哪里? “通用处理程序”代码在哪里?你究竟想在点击事件处理程序中做什么? – Oded 2012-03-23 11:41:44

什么你要找的是一个Data URL。你可以得到一个字节数组这样的BASE64(改变图像类型需要)

string imageBase64 = Convert.ToBase64String(userImg); 
string imageSrc = string.Format("data:image/gif;base64,{0}", imageBase64); 

在视图:

<img src='"<%=imageSrc%>"' /> 

这不会在IE 7中运行或更早,如果你需要支持那些,那么你会想看看MHTML

+1

看到转换为Base64增加了大约30%的编码值的大小,这可能不是一个选项。 – Oded 2012-03-23 11:48:32

+0

非常感谢:)多数民众赞成我正在寻找的东西:D – 2012-03-23 11:51:08