Я не могу найти эту информацию нигде. Вероятно, потому, что Google игнорирует ключевые слова. Есть ли разница между использованием <%:
и <%=
на вашей странице aspx? Они кажутся взаимозаменяемыми.
В чем разница между <%: и <% = в ASP.NET MVC?
Ответ 1
<%: %>
новая вещь в ASP.NET MVC 2. Это то же самое, что и <%= Html.Encode("Text") %>
. Рекомендуется всегда использовать <%: %>
, если у вас нет определенной причины не делать этого (например, вы обрабатываете данные из какого-либо файла или базы данных, которые уже были закодированы).
Ответ 2
Разница заключается в следующем:
<%= "my <text>" %>
выводит my <text>
, что является неправильным HTML
<%: "my <text>" %>
выводит my <text>
, что лучше
Ответ 3
@ntcolonel прямо на деньги. Кроме того, для случаев, когда ваши данные уже закодированы, предоставьте это, используя что-либо, реализующее IHtmlString
. Это предотвращает двойное кодирование и позволяет всегда использовать <%: %>
.
Я считаю, что магазины ASP.NET 4 должны стремиться к обеспечению политики <%:% > политикой.
Кроме того, новый синтаксис для ASP.NET 4 вообще; не обязательно просто MVC, что является отличной новостью для разработчиков WebForms.