Asp.net-Mvc
HtmlHelper 擴展方法的 HTML 編碼
首先,我將 MVC 3 RC1 與 Razor 視圖引擎一起使用。我有一個看起來像這樣的 HTML 助手擴展:
public static string TabbedMenuItem(this HtmlHelper htmlHelper, string text, string actionName, string controllerName) { StringBuilder builder = new StringBuilder(); builder.Append("<li>"); builder.Append(text); builder.Append("</li>"); return builder.ToString(); }在視圖上它被稱為:
@Html.TabbedMenuItem("Home", "Index", "Home")我遇到的問題是 MVC 會自動對視圖中的結果進行 HTML 編碼,所以我得到的只是字元串的編碼版本:
<li>Home</li>有誰知道如何禁用 HTML 助手擴展的自動編碼?
提前感謝安迪
public static IHtmlString TabbedMenuItem(this HtmlHelper htmlHelper, string text, string actionName, string controllerName) { StringBuilder builder = new StringBuilder(); builder.Append("<li>"); builder.Append(text); builder.Append("</li>"); return MvcHtmlString.Create(builder.ToString()); }使用返回值 IHtmlString。希望這有幫助。
使用標籤生成器