我正在将 base64 图像转换为 byte[]
并将其存储在 SQL Server 的 varbinary
列中。我想从数据库中获取图像并将其设置为 ASP.NET image
的图像 url。
我该怎么做?
将图片写入数据库的代码:
string str= myBase64.Value.Substring(17);
byte[] myByte = Convert.FromBase64String(str);
最佳答案
尝试这样的事情
<img src="GetBinary.aspx?id=123" />
或
<asp:Image ID="img" runat="server" ImageUrl="GetBinary.aspx?id=123" />
然后在 GetBinary page_load 中(或者如果是 MVC,则使用返回 null 的操作)。
//resp is HttpResponseBase or just use Response.
resp.AddHeader("content-disposition", "attachment;filename=" + fileName);
resp.BinaryWrite(myByte);
resp.Flush();
resp.End();
编辑:这是一个 ASHX 版本
<%@ WebHandler Language="C#"
CodeBehind="AssetHandler.ashx.cs" Class="NameSpace.AssetHandler" %>
//-- codebehind
public class AssetHandler : IHttpHandler
{
public void ProcessRequest(HttpContext context)
{
// place response code here using context.Response
}
}
关于c# - VarBinary 到图像 url,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21520441/