ASP.Net  »  Guide  »  Guida ASP.NET AJAX 

Framework Client e XMLScript



Esaminiamo più da vicino la parte del framework che svolge il lavoro nel lato client dell'applicazione. Questo framework è composto da diversi strati. Alcuni si occupano della standardizzazione degli eventi e dei metodi per la compatibilità tra i browser, altri invece sono insiemi di classi JavaScript o si occupano del parsing per il linguaggio XMLScript.

Figura 1. Gerarchia nel framework client

Gerarchia nel framework client

Il "framework client" è multistrato. Lo strato di più basso livello assicura la compatibilità cross browser degli strati superiori. In alto sulla pila troviamo i controlli e i componenti.

Al centro è utile notare la libreria di classi per la gestione dei controlli tramite JavaScript e un Component Model che definisce un il linguaggio di markup XMLScript, un ponte tra JavaScript e i controlli HTML, una sorta di scorciatoia per la programmazione Client.

XMLScript

XMLScript introduce nella programmazione web un nuovo concetto di "scripting lato client". La sua struttura è di tipo "markup", quindi dichiarativo. Non esistono metodi o eventi ma semplicemente tag da attribuire a controlli o altri oggetti presenti nella pagina. Durante l'esecuzione della pagina, il Component Model interpreta i tag e li trasforma nel linguaggio JavaScript eseguibile dal browser.

Questa tecnologia di questo tipo può ridurre i tempi di creazione di controlli e funzioni client permettendone lo sviluppo anche a chi non ha forti conoscenze di JavaScript. Inoltre riesce a mantenere una buona definizione del codice.

Possiamo quindi utilizzare un controllo lato client sia con le classi JavaScript, sia con XMLScript, la differenza sostanziale è che nel linguaggio di markup non operiamo direttamente sugli eventi dei controlli.

Listato 1. Funzione JavaScript

<!-- creazione del bottone con assegnazione del
     gestore dell'evento -->
<input type="button" id="btnSaluta" value="premi"
      onClick="saluta();" />

<script type="text/JavaScript">
// definizione del gestore
  function saluta(){
    alert("Benvenuto su HTML.it!");
  }
</script>

Listato 2. Funzione XMLSript

<script type="text/JavaScript">
// definizione del gestore
  function saluta(){
    alert("Benvenuto su HTML.it!");
  }
</script>

<!-- definizione semplice del bottone -->
<input type="button" id="btnSaluta" value="premi" />

<!-- Codice XMLScript per definire il comportamento -->
<script type="text/xml-script">
<page xmlns:script="http://schemas.microsoft.com/xml-script/2005">
  <components>
    <button id="btnSaluta" click="saluta" />
  </components>
  <references>
  </references>
</page>
</script>

In un esempio come questo, l'uso di XMLScript può sembrare "ingombrante", ma questo approccio rende più ordinato il codice quando abbiamo molti controlli da gestire. Infine, lavorare XMLScript, significa stravolgere un po' il web.config.

Anche se è doveroso menzionalo, XMLScript sembra comunque non avere molto successo, negli esempi che seguiranno utilizzeremo il linguaggio JavaScript.

Ultimi articoli ASP.Net

LINQ e la trappola della 'deferred execution'

Una "trappola" in cui si può incappare utilizzando il risultato di...

C#, le Custom Type Conversion

Conversioni personalizzate tra classi, creare metodi particolari per...

Introduzione a Entity Framework

Il framework ORM messo a disposizione da .NET

Repeater: visualizzare un feed RSS

Utilizzare il controllo XMLDataSource e sfruttare il metodo XPath()...

Repeater, il server control "semplice"

Cos'è e come funziona il controllo Repeater

Altri articoli

Guide ASP.Net

Guida ASP.NET MVC Best Practices

Un workflow dettagliato e ricco di suggerimenti pratici per...

Guida ASP.NET Starter Kit

Un modo semplice per imparare ad utilizzare le tecnologie Microsoft...

Guida Visual Studio 2010

L'ambiente di sviluppo di riferimento per sviluppare applicazioni su...

Altre guide

Newsletter @Microsoft Dev

Ogni giovedì, direttamente nella tua e-mail: articoli, guide, tutorial e script ASP, ASP.Net, SQL server e IIS.

Iscriviti alla newsletter

Altre newsletter

Corsi in aula

Corso Progettazione database

11 Maggio 2012 a Milano
Disponibilità: 6 Posti

Amministratore di Reti Windows Server 2008

11 Giugno 2012 a Milano
Disponibilità: 5 Posti

Nessun corso previsto