最終的に、カスタム属性をチェックするために、リクエストを処理する前に、リクエストを処理する webmethod への参照を取得しようとしています。
現在、リクエスト パスをプロジェクトの名前空間に追加し、.asmx 拡張子を削除し、スラッシュをドットに置き換えることで機能しています。ただし、これは、クラスの名前空間の階層がリクエスト パスの階層と一致していることを前提としており、そうすべき理由はありません。
ファイルを開いて解析する以外に、asmx ファイルへのリクエスト パスを指定して、内部のクラス タイプまたは内部のクラス タイプの名前への参照を取得する方法はありますか?
.NET はかなり新しいので、私がやっていることはばかげているかもしれません。しかし、いずれにせよ、私は答えに興味があります:)
編集: これは私のプロジェクトではなく、ASP.NET 3.5 および asmx Web サービスの使用にロックインされています
編集: 目的は、すべての webmethod に認証コードを追加することなく、特定の webservices が認証されていないユーザーによって実行されるのを防ぐことができるようにすることです。私のアイデアは、webmethods でそれらを public としてマークするカスタム属性を使用することでした。これらのみが、認証されていないユーザーによって実行されるカスタム HTTP モジュールまたはハンドラーによって許可されます。ユーザーのタイプはセッションに保存されます。