Post

Archivio della categoria 'ASP.NET'

Introduzione a ASP.NET

Cosa è ASP.NET?

ASP.NET rappresenta la parte del framework .NET che si usa per scrivere le applicazioni web.

Le caratteristiche peculiari di ASP.NET sono:

  1. Flessibilità: potete utilizzare tutte le classi di .NET e uno qualsiasi dei linguaggi che supportano lo standard .NET
  2. Sicurezza: sono assicurati elevati livelli di sicurezza
  3. Performance: le applicazioni ASP.NET sono convertiti in MS-IL (MS intermediate Language) per essere eseguiti più velocemente dal CLR.
  4. Integrabilità dei sistemi: predisposizione per l’utilizzo di formati aperti di interscambio dati (Es. XML) e per la realizzazione di applicazioni distribuite (Web Services)
  5. Riutilizzabilità del codice

WebServer

Un elemento essenziale per far girare le applicazioni WEB è il WebServer. Essendo .NET un insieme di specifiche sostanzialmente svincolato dalla piattaforma è possibile far girare pagine ASP.NET sia su Internet Information Service che su Apache grazie al progetto mono.

Code-Behind

Una singola pagina web è (a parte eccezioni si intende), in ASP.NET, fisicamente costituita da due file:

  • file .aspx contiene codice di impaginazione (codice HTML e componenti di interfaccia)
  • file .vb (visualbasic) o .cs (C#) contenente la logica di elaborazione

Questa tecnologia si chiama code-behind ed è molto utile perché consente a coloro che impaginano i contenuti di interagire con componenti ad alto livello molto più “maneggevoli”.
Un secondo vantaggio di questo approccio è che all’atto dell’installazione (deploy) dell’applicazione web i sorgenti “code behind” saranno compilati in opportune DLL. Il vantaggio è sia in termini di prestazioni (il codice è precompilato e dunque più rapido) sia in termini di riservatezza del codice.
A livello operativo all’interno della pagina .aspx si dichiara quale è il file che contiene il codice “code-behind” relativo.

Direttiva Page

La direttiva Page deve essere collocata in testa ad una pagina .aspx e serve per:

  1. specificare il tipo di linguaggio utilizzato
  2. esplicitare il nome del file che contiene il codice “code-behind”
  3. specificare da quale classe la pagina corrente sta ereditando le caratteristiche
  4. altri parametri…

Esempio:
<%@ Page Language="cs" CodeBehind="pagina.aspx.cs" Inherits="nome_applicazione.pagina"%>

Il parametro Language specifica il tipo di linguaggio utizzato (C# in questo caso); CodeBehind dice che la pagina con il codice code-behind è pagina.aspx.cs, collocato nella stessa directory; Inherits specifica che la pagina corrente eredita dalla classe pagina.

Realizzazione delle interfacce

All’interno delle pagine .aspx si utilizza la sintassi XML per identificare un particolare controllo e per specificarne i parametri.

Esempio di Web Controls:

<asp:TextBox> : Casella di testo
<asp:Button> : Bottone
<asp:Label> : Testo
<asp:Table> : Tabella
<asp:Calendar> : Calendario
<asp:Panel> : Pannello

Come si vede i controlli web non sono solamente elementi che rispecchiano i corrispondenti tag HTML ma anche elementi complessi come Calendar e Panel.

Runat=”server”

Una tra le direttive più importanti è Runat=”server”. Se vogliamo che il comportamento del controllo sia controllabile dalla logica code-behind è necessario impostare la proprietà runat al valore “server”.
Questo vuol dire che il codice code-behind avrà a disposizione un riferimento univoco per impostare le proprietà di quel controllo.

ID

Ogni controllo con runat=”server” dovrà avere un ID univoco. es. ID=”label1″
Nell’esempio il codice code-behind avrà potrà accedere al testo della label semplicemente con label1.Text

es.
label1.Text = “ciao mondo”;

Archivi e link