ツール: Visual Studio 2003 Enterprise Architect、ASP.net WebForms 1.1
言語: C#
こんにちは、
私は初めて IHttpHandler を実装しようとしています。うまくいくと思っていましたが、そうではありません。グリッドビューに画像が表示されませんでした。Img タグを使用し、ImageHandler の URL を使用しました。
<ItemTemplate>
<img src="ImageHandler.ashx?autoid=<%# DataBinder.Eval(Container.DataItem,"Blob_Id") %>" width="150" height="100" />
</ItemTemplate>
注: ImageHandler.ashx (実際には .cs 拡張子がありますが、.ashx である必要がありますか?)
私のGridViewはこのように空の画像を表示していましたが、
画像を右クリックしてプロパティを選択し、リンクを見つけたとき。
http://localhost/MySite/Presentation/ImageHandler.ashx?autoid=j01
そのリンクを別のタブに貼り付けたところ、このエラーが発生しました。ImageHandler は ImageId を必要とし、代わりに Image を送信するため、画像を送信する必要があります。
エラーメッセージ:
Exception Details: System.IO.FileNotFoundException: File or assembly name ImageHandler, or one of its dependencies, was not found.
PS:
- ImageHandler (IHttpHandler を実装) は、実際にはディレクトリ内の
.cs
ファイルですace
。 - この記事をフォローしました
アップデート:
ImageHandler の名前を FakeName.ashx などの偽の Handler に変更したため、ImageHandler が HttpHandler として適切に登録されていないようです。そのため、そのリンクを要求すると、上記と同じエラーが発生します。