我在SQL 2008的varbinary列中存储了GIF图像(如果需要,我可以切换到BMP)。我想从RDLC中的ReportViewer控件呈现的PDF中显示这些图像。 如何参考报告中的图像数据来完成这项工作?RDLC + ReportViewer控件 - 如何显示数据库中的图像?
=First(Fields!sh_lot_num_barcode_image.Value, "DataSet1"))
一个简单的字段引用似乎没有办法。
我在SQL 2008的varbinary列中存储了GIF图像(如果需要,我可以切换到BMP)。我想从RDLC中的ReportViewer控件呈现的PDF中显示这些图像。 如何参考报告中的图像数据来完成这项工作?RDLC + ReportViewer控件 - 如何显示数据库中的图像?
=First(Fields!sh_lot_num_barcode_image.Value, "DataSet1"))
一个简单的字段引用似乎没有办法。
所以事实证明my question was already asked before和自我回答。给蒂娜你的投票!
加上凯文的回答让我走上了正轨。我最终将一个属性添加到我的Linq存储过程结果类中,该类调用图像HTML处理程序。我将MIME类型更改为BMP,它的功能就像一个魅力 - 我现在可以删除数据库列,并且不需要跳过这些环节来组成图像服务的URL。下面的属性我可以直接分配给图像控件。
public byte[] NDCLabel {
get {
return
BarcodeUtilities.ConvertImageToByteArray(
BarcodeUtilities.GetBarcodeImage(this.ndc)
,System.Drawing.Imaging.ImageFormat.Bmp);
}
}
您是否考虑过编写HTTP处理程序以从数据库中读取图像并将其写入响应流?然后,您可以在报告中设置图像控件以将URL用作源,并且它应该在输出中呈现。
我没有任何实际的图像作为数据库中的斑点来测试,但是当我需要在报告上呈现富文本时,我做了一些类似的事情。
我确实有一个提供条形码的HTTP处理程序,但是我可以在图像控件中动态组合URL吗?我非常喜欢这一点,但是在我看来,这不是一种选择。有关这方面的文档非常稀少...... – cdonner 2009-12-02 20:25:59
您可以在您的SQL查询中编写URL并仅将该列作为http源引用?这就是我所做的。 – 2009-12-02 21:43:31