Meaning of the various symbols in .aspx page of asp.net

Sree picture Sree · Apr 29, 2011 · Viewed 16.3k times · Source

I have come across different symbols in .aspx page of asp.net

<%#eval(expr) %> 
<%#bind(expr) %>
<% %>  - for specifying the c# code in aspx page
<%$ %> - for specifying the SQL connection string in <asp:SqlDataSource>

Is there any underlying logic behind these symbols or is it just syntax which we have to remember blindly? What does <% %> mean in general?

Answer

Oded picture Oded · Apr 29, 2011

It is just syntax.

<% %> is simply short for <script runat="server"> </script> aka code render blocks.

<%# %> are binding expressions (plus the above).

<%= %> is the above + a Response.Write().

<%: %> is the above + a Response.Write() wrapped in Html.Encode (new in .NET 4.0).

<%$ %> is an ASP.NET expression, used to bind configuration or resource file data during runtime.