Ho da poco ripreso ASP.NET e con l’occasione voglio elencare i tag inline messi a disposizione nelle pagine aspx per compiere operazioni “particolari”.
Questi tag possono tornare utili in molte occasioni, evitando di appesantire il file di code-behind con istruzioni inerenti la semplice visualizzazione di dati.
Riporto inoltre i link a MSDN relativi ad i singoli tag.
Utilizzato per visualizzare testo, il funzionamento è del tutto analogo all’istruzione Response.Write.
The Date is now <%= DateTime.Now.ToShortDateString() %>
MSDN
Permette di definire codice che verrà eseguito lato server (equivalente al tag <script runat=”server”> ).
Lo riporto per completezza ma vi consiglio di evitare di usarlo in quanto tutto (e molto di più) si può ottenere in modo più semplice e pulito utilizzando il file di code-behind (SoC).
<% if (User.IsInRole("admin")) { %>
Hello admin!
<% } else { %>
Hello user!
<%} %>
MSDN
Utilizzato nelle espressioni di binding in accoppiata con Eval (binding one-way\read-only) e Bind (binding two-way).
Queste espressioni vengono risolte quando viene chiamato il metodo Databind dei controlli che lo supportano (es: GridView, Repeater, etc)
<asp:Repeater ID="rptCustomers" DataSourceID="customersSource" runat="server">
<ItemTemplate>
<%# Eval("FirstName") %>
</ItemTemplate>
</asp:Repeater>
MSDN
Permette di leggere valori dal file di configurazione o dai file di risorsa della vostra applicazione web.
Sono utilizzati soprattutto nei controlli “*Datasource” ma possono tornare utili in altre circostanze.
<asp:SqlDataSource ID="userSource" runat="server" ConnectionString="<%$ ConnectionStrings:DBConn %>" SelectCommand="SELECT * FROM [Users]" />
<asp:Label id="lblWelcome" runat="server" text="<%$ Resources: Messages, Welcome%>" />
MSDN
Rappresenta semplicemente un commento lato server.. si differenzia dai “normali” commenti HTML dal fatto che non verrà mai renderizzato e quindi non sarà accedibile da parte dell’utente nemmeno se visualizza l’HTML della pagina.
<asp:Label ID="lblUser" runat="server" />
<%—You can’t see me!!--%>
<asp:LinkButton ID="lbNew" Text="New" runat="server" />
MSDN
E’ un tag “particolare” che dichiara una direttiva di pagina, cioè un’istruzione speciale utilizzata dal compilatore per renderizzare pagine ed user control.
<%@ Page Language="C#" MasterPageFile="~/MasterPage.master" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" Title="Home Page" %>
MSDN
Spero che questo promemoria vi torni utile!
Alla prossima!