在ASP.NET中是否有任何方式編程式解決加載HttpHandler的路徑,因爲它是在Web.config中定義的? (即SomeModule.axd)?ASP.NET - 解決加載HttpHandler路徑
1
A
回答
4
的path屬性如果我理解正確的問題,你希望獲取從web.config中正確的路徑?
如果是這樣,什麼你可能尋找的是這樣的:
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上下文中使用Request對象
0
如果你有興趣的路徑處理程序處理當前請求:
string path = HttpContext.Current.Handler.GetType().Assembly.CodeBase;
如果你碰巧知道在哪裏可以找到其它的處理器實例的集合,你可以用同樣的方法來也得到他們的路徑。
+0
我實際上試圖解決處理程序的「虛擬路徑」,而不是DLL本身的位置。即如果「MyHandler」類型在「MyHandler.axd」註冊,我想解析「MyHandler.axd」。 – 2009-10-13 16:24:28
相關問題
- 1. HttpHandler的路徑匹配
- 2. 解決的角路徑
- 3. UEFI解決完整路徑
- 4. Requirejs不解決路徑
- 5. 瞭解Ruby中的加載路徑
- 6. HttpHandler下載txt文件(ASP.NET)?
- 7. 路由/解決asp.net mvc
- 8. 如何解決「訪問路徑...」錯誤?
- 9. 有關ASP.NET中httpHandler路徑的規則是什麼?
- 10. ASP.Net HTTPHandler匹配指定數量的段的路徑
- 11. emacs加載路徑
- 12. 配置路徑加載器路徑
- 13. 如何解決VS 2010 ASP.Net ReportViewer HttpHandler註冊錯誤?
- 14. 路徑/文件夾下注冊的HttpHandler
- 15. 如何解決「訪問路徑被拒絕的asp.net」
- 16. 如何解決asp.net中的路徑問題mvc
- 17. asp.net自定義HttpHandler和URL路由
- 18. ASP.NET 4自定義路由中的HttpHandler
- 19. 解決不存在的文件的類路徑相對路徑
- 20. org.apache.olingo路徑甚至下載後的依賴性不解決
- 21. 如何解決VBScript中的文件下載路徑錯誤?
- 22. 解決用wget/aria2下載變量的url路徑
- 23. 如何解決* url-loader *路徑?
- 24. 圖像源路徑不解決
- 25. 解決Java類路徑地獄
- 26. Plone多路徑表單解決方案
- 27. 解決ES6導入路徑2
- 28. 如何解決MVC5中的wwwroot路徑
- 29. 解決路徑返回在PowerShell中
- 30. 解決jsp中css的路徑
這是一個相當不錯的解決方案,雖然間接(由.NET標準)。如果有某種框架標準服務定位器可以映射到HttpHandler以便從單獨的模塊輕鬆連接,那將會非常好。值得考慮的事情我會說! – 2009-10-07 06:42:32
一般來說,用戶代碼有必要檢查該級別的應用程序配置的內部情況。另外還有內置的處理程序和其他通過機器級配置註冊的處理程序。然後有HttpHandlerFactories按需動態註冊處理程序。在處理程序的動態性質和潛在的安全性考慮之間,我可以看出爲什麼直接訪問這些對象的方式並不多。 – 2009-10-07 16:26:42
對於那些和我一樣頭痛的人,請記住,「system.web/httpHandlers」區分大小寫。這意味着Handlers中的「H」是國會大廈。 – 2010-08-03 02:01:53