Introduzione al Mobile Internet Toolkit di .NET

3 pagine in totale: <<Indietro 1 2 [3]

E' necessario settare anche il file web.config impostando il <DeviceFilters> ed il <filter name/> su Html32, impostazione che si riferisce all'HTML 3.2 che è la versione di HTML supportata senza problemi da tutti i browser in circolazione:

<configuration>
  <system.web>
   <deviceFilters>
     <filter name="IsHtml32" compare="PreferredRenderingType" argument="html32" />
   </deviceFilters>
  </system.web>
</configuration>

Per avere un codice adeguato ai terminali WAP l'attributo argument deve essere "wml11" o "wml12", mentre per i terminali giapponesi IMode sarà "chtml10". Infine per i browser internet l'attributo argument deve essere ovviamente "html32"

Notate che, in questo caso, non si tratta affatto di scrivere una sola volta del codice che funzioni sui diversi dispositivi indistintamente.
Il controls

<Choice Filter>
, infatti, funziona come una sorta di interruttore tra i vari tipi di codice, inviando di volta in volta quello più appropriato per il terminale.

Connessione ad un database

Ogni applicazione web e wireless "seria" ha dietro le quinte un database con il quale effettua transazioni.

Ecco un esempio per effettuare allora una semplice connessione ad un database in una pagina sfruttando il MIT:

<%@Register TagPrefix="Mobile" Namespace="System.Web.UI.MobileControls"
Assembly="System.Web.Mobile"%>
<%@ Page Inherits="System.Web.UI.MobileControls.MobilePage" %>
<%@ Import Namespace="System.Data" %>
<%@ Import Namespace="System.Data.OleDb" %>

<SCRIPT runat="server" language="VB">
Sub Page_Load(s as Object, e as EventArgs)
  ' se è la prima volta che carico il modulo allora...  if Not IsPostBack then
  'questa variabile è la stringa di testo che apparirà sul video
    Dim strOutput as string = ""
    'creo una stringa di connessione
    Dim strConnessione as string = "PROVIDER=Microsoft.Jet.OLEDB.4.0;DATA SOURCE=C:\prova.mdb;"

    'Creo una connessione
    Dim ObjConnessione as OleDbConnection = new OleDbConnection(strConnessione)

    'Creo una istruzione SQL
    Dim strSQL as string = "select * from tabella1"

    'Creo l'oggetto OleDbCommand che manipola il database
    Dim ObjCmd as OleDbCommand = new OleDbCommand
    ObjCmd.Connection = ObjConnessione
    ObjCmd.CommandText = strSQL

    'il metodo Open di ObjConnessione
    ObjConnessione.Open()

    'Creo un OleDbDataReader
    Dim ObjReader as OleDbDataReader
    ObjReader = ObjCmd.ExecuteReader(CommandBehavior.CloseConnection)

    'leggo tutti i valori di ObjReader utilizzando un ciclo while
    While ObjReader.Read()
    'assegno un valore alla strOutput con i dati i contenuti nel campo
    ' nome e cognome
      strOutput += ObjReader ("nome") + " " + ObjReader ("cognome") + "-"
    End While

    'lego al mobile control dati_database il valore di strOutput
    dati_database.Text = strOutput

    'Libero risorse
    ObjReader.Close()
    ObjConnessione.Close()

  End If
End Sub
</SCRIPT>

<mobile:Form id="Main" runat="server">

<mobile:Label runat="server" StyleReference="Title" Text="Contenuto del database:" />
<mobile:Label id="dati_database" runat="server" />

</mobile:Form>

Il risultato è il seguente:

Immagine Immagine

La connessione ad un database avviene quasi nella consueta maniera attraverso cui impostiamo ogni transazione in ASP.NET, le differenze principali sono:

  • in luogo dell'oggetto Dataset che è troppo "ingombrante" per la memoria e per l'ampiezza di banda dei cellulari, ho utilizzato l'oggetto OleDbDataReader, che offre anche performance migliori.
  • Non esiste il Datagrid, il Datalist o il Repeater per effettuare il binding quindi ho legato il valore estratto dal database alla proprietà text del controllo Label.

Conclusioni

Insomma questo è solo l'inizio per quanto riguarda lo sviluppo di applicazioni mobili.

I Mobile Controls sono un interessante strumento della piattaforma .NET e ci ritorneremo a breve con un altro articolo dedicato all'argomento, per comprendere appieno le reali potenzialità del toolkit.

Approfondimenti

3 pagine in totale: <<Indietro 1 2 [3]

Attenzione: Questo articolo contiene un allegato

Contenuti dell'articolo

Commenti
Dai un voto a questo articolo, ci aiuterà a migliorare il nostro sito (1 è il voto minimo, 5 il massimo).

Per procedere al rating dell'articolo devi essere autenticato.

Aggiungi un nuovo commento »»»
Per inserire un commento, devi registrarti alla nostra community.


TUTORIALS
TOP TEN ARTICOLI
NOTIFICHE

Iscriviti alla nostra newsletter nuoviarticoli per ricevere e-mail le notifiche!

Indirizzo e-mail:
PROVIDER ASP.NET 2.0

Seleziona il database per avere il web.config pronto per Membership, Roles e Profile API.



IN EVIDENZA
MISC