2009-12-02 83 views
1

我在SQL 2008的varbinary列中存儲了GIF圖像(如果需要,我可以切換到BMP)。我想從RDLC中的ReportViewer控件呈現的PDF中顯示這些圖像。 如何參考報告中的圖像數據來完成這項工作?RDLC + ReportViewer控件 - 如何顯示數據庫中的圖像?

=First(Fields!sh_lot_num_barcode_image.Value, "DataSet1")) 

一個簡單的字段引用似乎沒有辦法。

回答

2

所以事實證明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); 
     } 
    } 
1

您是否考慮過編寫HTTP處理程序以從數據庫中讀取圖像並將其寫入響應流?然後,您可以在報告中設置圖像控件以將URL用作源,並且它應該在輸出中呈現。

我沒有任何實際的圖像作爲數據庫中的斑點來測試,但是當我需要在報告上呈現富文本時,我做了一些類似的事情。

+0

我確實有一個提供條形碼的HTTP處理程序,但是我可以在圖像控件中動態組合URL嗎?我非常喜歡這一點,但是在我看來,這不是一種選擇。有關這方面的文檔非常稀少...... – cdonner 2009-12-02 20:25:59

+0

您可以在您的SQL查詢中編寫URL並僅將該列作爲http源引用?這就是我所做的。 – 2009-12-02 21:43:31

相關問題