Разница между <%:%> и <% #:%> в Asp.Net

Я знаю, что мы можем синтаксис <%: %> для кодирования html, который представлен в .Net 4. Но я читал новые функции Asp.Net 4.5, и я понял, что у нас есть другой тип, т.е. <%#: %>, который используется для кодирования результата выражения привязки данных. Я путаюсь с этим.

What is the difference between <%: %> and <%#: %> in Asp.Net

Пожалуйста, объясните их оба.

Ответ 1

Точно так же, как <%: %> является кодированной HTML версией <%= %>, тег <%#: %> представляет собой кодированную HTML версию <%# %>.

Тег <%#: %> делает то же самое, что и <%# %>, но затем он вызывает Server.HTMLEncode в строке.

Ответ 2

ASP.NET предоставляет то, что называется синтаксисом привязки, чтобы связать разметку HTML и элементы управления с значениями, извлеченными из источников данных или других переменных; что синтаксис привязки рассматривается как нечто вроде:

<%# someVariable %>

Следующий двоеточие просто расширяет новое поведение "auto-HtmlEncode" до результатов этих выражений bnding.

Надеюсь, что это поможет.