2011-10-27 40 views
2

我有這個問題試圖使用Html助手。我讀過那個動態演員應該能工作,但我不知道如何在我的情況下得到它。代碼:擴展方法不能動態調度mvc3剃鬚刀

@{ 

Html.LinkIfHasData(top.Text, Html.MenuTargetURL(top), false, 
new { rel = "tab" + @top.ID }); 

} 

LinkIfHasData返回MvcHtmlString,MenuTargetURL返回字符串。

我嘗試這樣做:

@{ 

(string)Html.LinkIfHasData(top.Text, (string)Html.MenuTargetURL(top), false, 
new { rel = "tab" + @top.ID }); 

} 

但它不工作。有任何想法嗎?

謝謝

^h

+1

什麼是你的viewmodel? –

+0

這可能有所幫助 - http://stackoverflow.com/questions/4136703/razor-htmlhelper-extensions-not-found –

+0

我是動態創建一個bool,我在foreach循環中使用。所以,而不是做var IsLocal = ...我做了布爾? IsLocal = ...現在它工作。 –

回答

2

已插入代碼塊中你的助手,所以生成的HTML將不會進入你的看法。從代碼塊中刪除幫助程序,並將其放置在視圖中。改變你的看法如下:

@Html.LinkIfHasData(top.Text, Html.MenuTargetURL(top), false, 
    new { rel = "tab" + @top.ID })