如何在asp.net报表查看器中显示数据库保存的QR码

问题描述 投票:0回答:1

这是场景:

我使用https://github.com/jeromeetienne/jquery-qrcode生成并将QR码保存到数据库。

现在,我必须使用asp.net中的报表查看器(rdlc)来显示它。

数据库中的数据类型是varchar(max),其值的一个示例是:

data:image/png;base64,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

我的问题是,如何使用asp.net报告查看器在报告中显示此信息?

这是我在浏览器中显示它的方式:

<img src="TheLongStringValueFromDatabase" />

我试图将其作为图像插入报表查看器并设置以下内容:

  1. MIME类型为“image / png”
  2. 源数据库
  3. 价值(上述价值)

任何帮助表示赞赏。

asp.net reporting-services qr-code rdlc reportviewer
1个回答
1
投票

我找到了办法。

我没有将图像保存为varchar(max),而是将其保存为varbinary(max)到数据库。为了做到这一点,我做了以下事情:

Dim result As String() = qrCodeString.Split(New Char() {","c})    
Dim bytes() As Byte = System.Convert.FromBase64String(result(1))

其中qrCodeString是我在原始问题中粘贴的长字符串值。

然后,在报表查看器中,我插入“图像”并像以前一样设置属性,但现在数据类型为varbinary(max)的值除外,并且QR码现在显示出来!

© www.soinside.com 2019 - 2024. All rights reserved.