2009-09-27 36 views
1

我在ASP.NET MVC中創建了一個共享(靜態)方法,因此它可以被我的項目中的任何控制器使用。這個靜態方法需要生成一個URL。我想我需要使用System.Web.Mvc.UrlHelper,但我無法弄清楚如何從靜態方法中調用它。構造函數似乎需要一個RequestContext。有任何想法嗎?如何在MVC.NET中的共享(靜態)方法中生成URL?

回答

1

AFAIK,沒有辦法靜態地獲取「當前」RequestContext。您需要從調用它的控制器傳入RequestContext。任何控制器都可以通過使用此代碼來實現:

this.ControllerContext.RequestContext 
+0

我可以用另一種方式生成URL嗎?我想知道爲什麼我需要知道當前的RequestContext來生成一個新的URL。 – royco 2009-09-27 22:06:33

+0

P.S.這工作。謝謝。 – royco 2009-09-27 22:11:37

+0

UrlHelper是一個很好的方法。您也可以直接使用路由機制生成相對URL,但您需要傳遞路由信息。 – womp 2009-09-27 22:13:20

相關問題