2012-08-01 36 views
1

我需要能夠在我的自定義幫助類中獲取控制器名稱。MVC獲得幫助類中的控制器

我有以下內容: 「HelperController」 行動: 「菜單」,像這樣:它調用控制器

  1. 佈局視圖

@Html.Action("Menu", "Helper")

  1. 這個電話ActionResult並生成一個html:

    @model List<MvcMenuItem> 
    @{ 
    Layout = null; 
    } 
    @{   
    @Html.Menu(this.ViewContext).ClientId("navMain").AddRange(Model).Render() 
    } 
    
  2. 這就要求「public static class MvcMenuExtensions」,並在那裏(我Render()方法)我需要能夠獲得與調用MvcMenuExtensions

我控制器名稱目前在我,而不是控制器名稱已經試過這樣:

string controller = this.ViewContext.RouteData.Values["controller"].ToString(); 

但這會導致控制器是‘Helper’控制器,而不是電流控制器我是因爲這個‘ActionResult’正在從頁面上的任何地方調用(它在佈局)。

感謝

+0

這可能會提供答案,你的問題: http://stackoverflow.com /問題/ 4412310 /如何對獲得電流控制器和行動-F rom-inside-child-action – 2012-08-01 07:48:46

+0

你做到了!謝謝 – ShaneKm 2012-08-01 07:52:37

回答