Trước hết, tôi đang sử dụng MVC 3 RC1 với công cụ xem Dao cạo. Tôi đã có một phần mở rộng HTML helper mà trông như thế này:Mã hóa HTML cho phương pháp mở rộng HtmlHelper
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();
}
Và trên quan điểm nó được gọi là như thế này:
@Html.TabbedMenuItem("Home", "Index", "Home")
Vấn đề tôi đã có là MVC là tự động HTML mã hóa các kết quả trong chế độ xem vì vậy tất cả những gì tôi nhận được là phiên bản được mã hóa của chuỗi:
<li>Home</li>
Có ai biết cách tắt mã hóa tự động cho tiện ích mở rộng trợ giúp HTML của bạn không?
Cảm ơn trước Andy
Để tham khảo trong tương lai, MVC có một lớp System.Web.Mvc.TagBuilder mà bạn có thể muốn xem xét. Nó không phủ nhận nhu cầu trả lại IHtmlString, nhưng nó đi kèm với nhiều chức năng hơn StringBuilder cho loại nhiệm vụ này. –