Pregunta

¿Puedo obtener un "cuándo usar" para estos y otros?

<% %>
<%# EVAL() %>

Gracias

¿Fue útil?

Solución

Revisar la Referencia de sintaxis de formularios web en MSDN.

Para lo básico,

  • <% %> se utiliza para bloques de código puro.Generalmente solo uso esto para declaraciones if


    <div class="autenticado">

    <div class="no autenticado">
  • se utiliza para agregar texto a su marcado;es decir, equivale a

    <div class='<%= IsLoggedIn?"autenticado":"no autenticado" %>'>

  • <%# Expression %> es muy similar a lo anterior, pero se evalúa en un escenario de DataBinding.Una cosa que esto significa es que puedes usar estas expresiones para establecer valores de controles runat="server", lo cual no puedes hacer con la sintaxis <%= %>.Normalmente, esto se usa dentro de una plantilla para un control enlazado a datos, pero también puede usarlo en su página y luego llamar a Page.DataBind() (o Control.DataBind()) para hacer que ese código se evalúe.

Los otros mencionados en el artículo vinculado son menos comunes, aunque ciertamente también tienen sus usos.

Otros consejos

También puedes usar

<%= Class.Method() %>

E imprimirá el resultado, tal como puedes hacerlo en Ruby on Rails.

Solo quiero agregar, también está la expresión de recursos.

<%$ Resources:resource, welcome%>

y asp.net buscaría automáticamente la versión localizada de "bienvenida" en los ensamblajes satélite.

En ASP.NET 4.0, viene <%:%> sintaxis para escribir algo codificado en html.

<%: "<script>alert('Hello XSS')</script>" %>  

Lo anterior se puede utilizar en lugar de amado.

<%= Html.Encode("<script>alert('Hello XSS')</script>")%>  
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top