Reputation: 7752
I know that we can <%: %>
syntax for html encoding that is introduced in .Net 4. But I was reading new features of Asp.Net 4.5, and I got that we have another type i-e <%#: %>
that is used for encoding the result of databind expression.
I am confuse with this.
What is the difference between <%: %> and <%#: %> in Asp.Net
Please explain both of them.
Upvotes: 11
Views: 1391
Reputation: 10184
ASP.NET provides what's called a "binding" syntax to link HTML markup and controls to values extracted from data sources or other variables; that binding syntax is seen as something like:
<%# someVariable %>
The following colon merely extends the new "auto-HtmlEncode" behavior to the results of those bnding expressions.
Hope that helps.
Upvotes: 1
Reputation: 700910
The same way that <%: %>
is the HTML encoded version of <%= %>
, the <%#: %>
tag is the HTML encoded version of <%# %>
.
The <%#: %>
tag does the same as <%# %>
, but then it calls Server.HTMLEncode
on the string.
Upvotes: 5