2015-08-17 50 views
0

我有一個助手添加類當前菜單項.NET MVC C# - 添加類當前菜單項

public static string CurrentItem(this HtmlHelper helper, string action, string controller) 
    { 
     string classValue = ""; 

     string currentController = helper.ViewContext.Controller.ValueProvider.GetValue("controller").RawValue.ToString(); 
     string currentAction = helper.ViewContext.Controller.ValueProvider.GetValue("action").RawValue.ToString(); 

     if (currentController == controller && currentAction == action) 
     { 
      classValue = "wb-navcurr"; 
     } 

     return classValue; 
    } 

但它不是我的部分工作,因爲我已經課程設置.. 。

@Html.ActionLink("Search", "Search", "Home", null, new { @class = "list-group-item wb-sec-h3 h3" }) 

當我加入我的助手類,它只是顯示爲在HTML

@Html.ActionLink("Search", "Search", "Home", null, new { @class = "list-group-item wb-sec-h3 h3 Html.CurrentItem(\"Search\", \"Home\")" }) 

那麼,如何添加一個類的我人準備好了嗎?

謝謝

回答

0

這只是一個字符串:

"list-group-item wb-sec-h3 h3 Html.CurrentItem(\"Search\", \"Home\")" 

它可能包含什麼樣子代碼到一個人,但.NET不會執行該代碼。這只是一個字符串。

爲了執行代碼,您必須將其從字符串中移除並將其結果連接到文字字符串。這可能看起來像這樣:

"list-group-item wb-sec-h3 h3 " + Html.CurrentItem("Search", "Home") 
+0

當然!這將是我認爲的那些日子之一。謝謝您的幫助! – Karinne