В чем разница между <%: и <% = в ASP.NET MVC? - PullRequest
10 голосов
/ 30 июля 2010

Я не могу найти эту информацию нигде.Возможно, потому что Google игнорирует ключевые слова.Есть ли разница между использованием <%: и <%= на странице aspx?Они кажутся взаимозаменяемыми.

Ответы [ 3 ]

19 голосов
/ 30 июля 2010

<%: %> - это новая вещь в ASP.NET MVC 2 .Это так же, как <%= Html.Encode("Text") %>.Рекомендуется всегда использовать <%: %>, если у вас нет особых причин не делать этого (например, вы визуализируете данные из некоторого файла или базы данных, которые уже были закодированы).

6 голосов
/ 30 июля 2010

@ ntcolonel прав на деньги.Кроме того, для случаев, когда ваши данные уже были закодированы, предоставьте их, используя все, что реализует IHtmlString.Это предотвращает двойное кодирование и позволяет всегда использовать <%: %>.

Я считаю, что магазины ASP.NET 4 должны стремиться к обеспечению <%:%> политикой.

Кроме того, новый синтаксис предназначен для ASP.NET 4 в целом;не обязательно просто MVC, что является отличной новостью для разработчиков WebForms.

6 голосов
/ 30 июля 2010

Разница:

<%= "my <text>" %> выведет my <text>, что неверно HTML

<%: "my <text>" %> выведет my &lt;text&gt;, что лучше

Подробнее здесь

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...