ASP.NETでは、Web.configで定義されているように、ロードされたHttpHandlerへのパスをプログラムで解決する方法はありますか? (SomeModule.axd)?ASP.NET - ロードされたHttpHandlerパスを解決する
1
A
答えて
4
のパスプロパティを使用できますか?
string p = null;
System.Web.Configuration.HttpHandlersSection httpHandlersSection =
(System.Web.Configuration.HttpHandlersSection)
System.Configuration.ConfigurationManager.GetSection("system.web/httpHandlers");
foreach (System.Web.Configuration.HttpHandlerAction handler in httpHandlersSection.Handlers)
{
if(handler.Type == "myType")
{
p = handler.Path;
break;
}
}
トリックはここにif文です:あなたはおそらく探しているものを
その場合には、このようなものです。 web.configのハンドラには、キーとして使用できるフレンドリな "名前"はありません。彼らは型(醜い弦でもよい)、パス、動詞だけです。関心のある特定のハンドラーを見つけるには、ハンドラーのタイプまたはパス内で、探したい特定のハンドラーを識別する既知の部分文字列を検索する必要があります。
0
現在のHTTPコンテキストから私が正しく質問を理解していれば、あなたは右のweb.configファイルからのパスを取得したいRequestオブジェクト
0
あなたは現在のリクエストを処理するハンドラへのパスに興味があるなら:あなたはどこ他のハンドラインスタンスのコレクションを見つけるために知っておく起こった場合
string path = HttpContext.Current.Handler.GetType().Assembly.CodeBase;
、あなたが同じアプローチを使用することができます彼らの道も手に入れてください。
+0
私は実際には、DLL自体の場所ではなく、ハンドラの「仮想パス」を解決しようとしています。私。 "MyHandler"タイプが "MyHandler.axd"に登録されている場合、 "MyHandler.axd"を解決したいと思います。 –
関連する問題
- 1. ASP.NETのhttpHandlerパスに関するルールは何ですか?
- 2. HttpHandlerのパフォーマンス解析
- 3. asp.net mvcのパスの問題を解決する方法
- 4. パス解決
- 5. はLaravel - アップロードされた画像のパスを解決
- 6. asp.netのHttphandlerとHttpmodule
- 7. ASP.NET〜解決
- 8. TypeScriptのパスを解決するoutDir
- 9. bashでパスを解決する
- 10. UEFI絶対パスを解決する
- 11. AutofacロギングモジュールとASP.Net Webフォームで解決されたパラメータ
- 12. 私のasp.netをテストするにはhttphandler
- 13. asp.netカスタムHttpHandlerとURLルーティング
- 14. HTTPHandlerのASP.NET MVCで5.0
- 15. IIS 7,7.5のASP.NETカスタムHttpHandler
- 16. SqlDataProviderは解決パスを解決できません
- 17. ocLazyLoad解決されたファイルをui-routerで解決する方法
- 18. ユニティコンテナでジェネリッククラスを解決する方法コンストラクタパラメータとして解決されたジェネリックインターフェイス
- 19. 経路が解決される前に角度2のコンポーネントがロードされる
- 20. nodejsで相対パスが解決されない
- 21. ASP.NET MVC3のURLパラメータがnullに解決される
- 22. 解決されたsetListAdapterとSimpleCursorAdapterの解決
- 23. UIルータのネストされた解決が解決しない
- 24. データベースからロードされたASP.NETメニュー
- 25. ネイティブスナップライブラリを解決する方法:SnappyCompressorがロードされていませんか?
- 26. 設定されたHttpHandlerのリストを取得する
- 27. ASP.NET HttpHandlerがタイムアウトしますか
- 28. ASP.NETルートのURLがDefault.aspxに解決されない
- 29. EntityFrameworkの古いバージョンのASP.NETタイプが解決されない
- 30. 別のガードが解決された後、Angular2がガードされる
これは間接的ではあるが(.NET標準による)非常にまともな解決策です。別々のモジュールから簡単にインタフェースできるように、HttpHandlerにマップできるフレームワーク標準サービスロケータがあれば、非常にうれしいでしょう。私が言うと思う価値のあるもの! –
一般に、ユーザーコードは、そのレベルでアプリケーションの構成の内部を調べる必要があることは珍しいことです。さらに、組み込みのハンドラと、マシンレベルの設定で登録されたハンドラがあります。次に、必要に応じてハンドラを動的に登録するHttpHandlerFactoriesがあります。ハンドラの動的な性質と潜在的なセキュリティの考慮事項の間で、私はこれらのオブジェクトに直接アクセスする方法があまりないことがわかります。 –
同じ頭痛をした人のために、 "system.web/httpHandlers"は大文字と小文字を区別して覚えています。つまり、Handlersの "H"は議院です。 –