C# 如何在asp.net中显示任何类型的图像?

C# 如何在asp.net中显示任何类型的图像?,c#,asp.net,C#,Asp.net,如何以不同格式显示图像 我试过这个 context.Response.ContentType = "image/jpeg"; 这将只显示jpeg图像。但我需要以不同格式显示图像 编辑: 我从评论中了解到,您的问题是: 如何将ASP.Net映像的src设置为base64编码数据? 或 如何在asp.net映像中以不同格式显示来自数据库的映像 假设您从数据库中获取图像字节,并且有一个img标记 <img id= "img" runat= "server" /> 在您的webfor

如何以不同格式显示图像

我试过这个

context.Response.ContentType = "image/jpeg";  
这将只显示
jpeg
图像。但我需要以不同格式显示图像

编辑: 我从评论中了解到,您的问题是:

如何将ASP.Net映像的src设置为base64编码数据? 或 如何在asp.net映像中以不同格式显示来自数据库的映像

假设您从数据库中获取图像字节,并且有一个img标记

<img id= "img" runat= "server" />
在您的webform页面上使用如下方法

public partial class DisplayImagePage:Page
{
    public void ibDisplayImg_click(object sender,EventArgs e)
    {
        // read image bytes from database
        Byte[] i= ReadImageFromDatabase();
        img.Src = i.ConvertToBase64ImageFormat(  ImageFormats.Png);
    }
}
如果您想要mime类型的其他类型的图像,他们提供

// Add a new csharp file to your project
// Add below code to it
public static class DrawingExtensions
{
    public static string ConvertToBase64ImageFormat ( this byte[] b, ImageFormats f)
    {
            // you can find other formats image mimeType and add all you need
           string mt = system.Net.Mime.MediaTypeNames.Image.Tiff;
           string i = Convert.ToBase64String(b);
           return string.Format("data:{0};base64,{1}",mt,i);
    }
}
public enum  ImageFormats
{
     Jpeg
     Png ,
     // And other formats
}
像这样使用

public partial class DisplayImagePage:Page
{
    public void ibDisplayImg_click(object sender,EventArgs e)
    {
        // read image bytes from database
        Byte[] i= ReadImageFromDatabase();
        img.Src = i.ConvertToBase64ImageFormat(  ImageFormats.Png);
    }
}
更多信息:


到目前为止,您尝试了什么?当你说“显示”时,你是指在应用程序中,对于web?打印?为什么不使用html代码显示图像?这是一个过于笼统的问题-你知道有多少不同的图像格式存在吗?你想展示多少?浏览器可以显示多少种格式?你知道吗?您所要求的是一个完整的项目,您需要定义需求@JanR:I使用c#和sql在asp.net上工作。为了从数据库中检索图像,我使用了通用处理程序。如何修改我提到的代码以显示PNG和jpeg等图像。上面的代码只能用于jpeg。
string mimeType = MimeMapping.GetMimeMapping(fileName);
context.Response.ContentType = mimeType;