我将图像数据存储在数据库中。我想在后面的代码中检索该数据并将其传递给aspx页面,以便它可以在某些JS中用作参数。
通常情况下,我只是在HTML中包含一个隐藏字段,并在后面的代码中填充页面加载时我想要的任何数据,然后在JS中获取它。 问题是JS函数需要一个图像URL而不是-f
,这就是图像存储在数据库中的方式。
如何将图像数据转换为JS可以使用的内容?
这里是JS函数供参考:
Byte()
谢谢!
答案 0 :(得分:0)
正如@Igor在评论中所建议的,我创建了一个单独的页面,在响应中返回文件流:
Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim rs As SqlDataReader = SqlHelper.ExecuteReader(ConfigurationManager.AppSettings("connString"), "spGetAttachment", Request.QueryString("id"))
rs.Read()
Response.Buffer = True
Response.Clear()
Response.Expires = 0
Response.ContentType = rs("ContentType")
Dim File() As Byte = rs.GetValue(8)
Response.BinaryWrite(File)
Response.End()
End Sub
然后在原始页面上,我调用将图像的URL设置为我新创建的Viewer.aspx:
function onVrViewLoad() {
var imgID = document.getElementById("<%= hfImgID.ClientID %>");
var vrView = new VRView.Player('#vrview', {
image: "AttachmentViewer.aspx?id=" + imgID.value,
width: 780,
height: 580,
is_stereo: false
});
}