2011-01-19 13 views
0

私の画像のバイナリデータがデータベーステーブルに保存されていて、それらの画像をgridviewで表示したいとします。 1つのアプローチはちょうど私がクエリ文字列としていくつかのIDを渡す1つのページを作成し、そのページはBinaryWriteメソッドを介して画像データをデータベースから取得し、画像データをページにストリームダウンします。例はhttp://www.aspdotnetcodes.com/Insert_Images_Database.aspxです。このURLは、BinaryWriteを介して画像データを表示する方法について説明しています。 このアプローチは古く、私は知っています。私はグリッドビューで画像を表示することができます他の方法はありますが、私は画像のバイナリデータが格納されているときにgridiviewを介して画像を表示するための他のアプローチを知っている場合は、table.pleaseに画像のURLを格納したいdb。おかげgridviewで画像を表示していますか?

答えて

0

でDataReaderを使用していたノートをあなたが保存されたあなたのイメージを持っているようですねバイナリ形式でデータベースに格納します。次に、それらをGridViewに表示します。

は、この方法を検討してください:

  • は、あなたのイメージを保持するために、あなたのGridViewのテンプレートフィールドを作成します。あなたのイメージのバイナリデータを取得するためのハンドラURLを呼び出すことになります。
  • イメージハンドラページを作成します。これを.ashxにします。
<Columns> 
    <asp:TemplateField HeaderText="Image"> 
    <ItemTemplate> 
     <asp:Image ID="Image1" runat="server" Height="80px" Width="80px" 
     ImageUrl='<%# "ImageHandler.ashx?ImID="+ Eval("ImageID") 
        %>'/> 
    </ItemTemplate> 
</asp:TemplateField> 
</Columns> 

データベースから必要なイメージをつかむために、例えば、クエリ文字列に一意の識別子を入れて、あなたのイメージハンドラを実装する方法についてanswer at the bottom of this MSDN question for more detailsを参照してください。 GridViewをバインドするときにバイナリデータを戻す必要はありません。一方、グリッド内の各行のハンドラへの呼び出しをnで作成します。

関連する問題