Почему мой пользовательский результат HTML Helper получает кодировку html?
У меня есть следующий пользовательский html-помощник в asp.net mvc 3
public static string RegisterJS(this HtmlHelper helper, ScriptLibrary scriptLib)
{
return "<script type=\"text/javascript\"></script>\r\n";
}
Проблема заключается в том, что в результате получается html-кодирование таким образом (мне пришлось добавить пробелы, чтобы получить результат, чтобы правильно показать результат:
<script type="text/javascript"></script>
Это, очевидно, не очень помогает мне. Ничто из того, что я читал, ничего не говорит об этом.. любые мысли о том, как я могу вернуть свой реальный результат?
Ответы
Ответ 1
Вы вызываете помощника в блоке Razor @
или блоке ASPX <%: %>
.
Эти конструкции автоматически выходят за пределы их вывода.
Вам нужно изменить помощника, чтобы вернуть HtmlString
, который не будет экранирован:
return new HtmlString("<script ...");