ツール: Visual Studio 2003 Enterprise Architect、ASP.net WebForms
言語: C#
こんにちは。
初めて HttpHandler を実装したばかりで、うまくいくと思っていましたが、このエラーに直面しています
エラーメッセージ:
プロジェクトの実行中にエラーが発生しました: Web サーバーでデバッグを開始できません。デバッグ HTTP 要求の送信時にサーバー側のエラーが発生しました。サーバーが正しく動作していることを確認します。デバッグなしで Debug.start を実行して、web.config に構文エラーがないことを確認します。オンライン ドキュメントの ASP.NET と ATL サーバーのデバッグに関するトピックも参照してください。
コード:クラス
がありますImageHandler.cs
public class ImageHandler : IHttpHandler
{
public ImageHandler()
{
}
public void ProcessRequest(HttpContext context)
{
//blah blah code
bytes = (byte[])cmd.ExecuteScalar();
context.Response.BinaryWrite(bytes);
}
}
リクエストを呼び出すページに WebHandler を登録しました。
<%@ WebHandler Language="C#" Class="ace.ImageHandler" %>
gridView から HttpHandler を呼び出しています
<asp:TemplateColumn>
<ItemTemplate>
<img src="ImageHandler.ashx?autoid=<%# Eval("Blob_Id").ToString() %>" width="150" height="100" />
</ItemTemplate>
</asp:TemplateColumn>
ハンドラーを Web.Config に登録しました
<httphandlers>
<add verb="GET" path="ace\ImageHandler.ashx" type="ace.ImageHandler, ImageHandler" />
<httphandlers>
アップデート:
Debug > Start without Debugging を使用し、WebApp を実行したところ、このエラーが発生しました。
説明: この要求を処理するために必要な構成ファイルの処理中にエラーが発生しました。以下の特定のエラーの詳細を確認し、構成ファイルを適切に変更してください。
パーサー エラー メッセージ: 構成セクション 'httphandlers' を認識できません
ソース エラー:
Line 9: <system.web>
Line 10:
Line 11: <httphandlers>
Line 12: <add verb="*" path="*.ashx" type="ace.ImageHandler, ImageHandler" />
Line 13: <httphandlers>
注: ace は名前空間でImageHandler.cs
あり、クラスです
PS:この記事をフォローしました