我已将图像保存在数据库中并希望在asp.net中显示,我有字节数组,MIME和大小......
var da = new SqlDataAdapter("GetBlob", sqlConnection);
da.SelectCommand.CommandType = CommandType.StoredProcedure;
da.SelectCommand.Parameters.AddWithValue("@BlobId", blobDto.BlobId);
var ds = new DataSet();
da.Fill(ds, "GetBlob");
var dr = ds.Tables[0].Rows[0];
var byteArray = (byte[]) dr["BlobData"];
string MIME=dr["MIME"]; e.g .jpg
请帮助我如何显示此图片
答案 0 :(得分:0)
您可以将字节数组转换为base64编码字符串,并将其作为img
属性传递给某个src
标记。 base64编码图像的src
属性格式为 - 数据: conentType ; base64, theBase64string 。
要将字节数组转换为base64字符串,请使用Convert.ToBase64String(byteArray);
示例C#:
byte[] bytes = new byte[]{ }; // .. Get it from database
string contentType = "image/jpeg"; // .. Get it from database
string imageSrc = string.Format("data:{0};base64,{1}",
contentType, Convert.ToBase64String(bytes));
在Html中:
<img src="@imageSrc" />
// Or
<img src="<%= imageSrc =>" />
// Depending on your view engine