Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Aggiornamento: novembre 2007
Con C# e .NET Compact Framework è possibile accedere e gestire dati di database su un dispositivo mobile utilizzando concetti e interfacce API del tutto analoghi a quelli normalmente utilizzati per la programmazione con database su computer desktop. Nel caso di dispositivi mobili, con ADO.NET viene fornita una versione ridotta dell'interfaccia API desktop specifica per i dispositivi Windows CE, inclusi Pocket PC e Smartphone. Per ulteriori informazioni, vedere Accesso al database (confronto tra C# e Java).
Java
In Java è possibile utilizzare J2ME e JDBC per accedere a un database da un dispositivo mobile. Per ulteriori informazioni, vedere Accesso al database (confronto tra C# e Java). J2ME non rappresenta la stessa interfaccia API su tutti i dispositivi e non dispone di un unico ambiente di sviluppo. È inoltre necessario eseguire J2ME in una macchina virtuale, ovvero KVM o JVM a seconda della configurazione.
C#
In C#, per eseguire operazioni di lettura su un database, è possibile applicare i concetti già acquisiti di connessione, comando e tabella dati sul computer desktop o sul dispositivo mobile. Si utilizzano lo spazio dei nomi e le classi System.Data.SqlServerCe. Ad esempio, è possibile:
Utilizzare System.Data.SqlServerCe.SqlCeConnection per la connessione di database.
Utilizzare System.Data.SqlServerCe.SqlCeCommand per l'oggetto comando SQL.
Utilizzare un oggetto gruppo di risultati, ad esempio DataTable, per l'oggetto tabella dati.
.NET Framework fornisce DataAdapter per facilitare l'utilizzo simultaneo delle classi sopra indicate. L'oggetto System.Data.SqlServerCe.SqlCeConnection può essere impostato tramite la proprietà di connessione System.Data.SqlServerCe.SqlCeDataAdapter dell'oggetto.
La query da eseguire viene specificata utilizzando la proprietà System.Data.SqlServerCe.SqlCeDataAdapter.SelectCommand diDataAdapter o la query viene passata al costruttore di DataAdapter insieme all'oggetto connessione.
da = new SqlCeDataAdapter("SELECT * FROM Users", cn);
L'oggetto DataTable viene creato utilizzando il metodo Fill dell'oggetto DataAdapter. L'oggetto DataAdapter contiene i dati del gruppo di risultati restituiti dalla query. È possibile scorrere l'oggetto DataAdapter per accedere alle righe di dati utilizzando l'insieme Rows.
Nel codice riportato di seguito viene illustrato come accedere alle righe di una tabella di un database di SQL Server CE (SQLCE) su un dispositivo mobile.
namespace DataAccessCE
{
using System.Data;
using System.Data.SqlServerCe;
class DataAccessCE
{
public static string connectionString = "";
public static SqlCeConnection cn = null;
public static SqlCeDataAdapter da = null;
public static DataTable dt = new DataTable();
static void Main()
{
connectionString = "Data Source=\\My Documents\\Database.sdf" ;
cn = new SqlCeConnection(connectionString);
da = new SqlCeDataAdapter("SELECT * FROM Users", cn);
da.Fill(dt);
foreach (DataRow dr in dt.Rows)
{
System.Console.WriteLine(dr[0]);
}
}
}
}
Per ulteriori informazioni, vedere i seguenti argomenti:
Compilazione del codice
Prima di poter utilizzare un database SQLCE da un'applicazione, è necessario aggiungere un riferimento a System.Data.SqlServerCe nel progetto. A tale scopo, scegliere Aggiungi riferimento dal menu Progetto nell'ambiente di sviluppo. Selezionare quindi il componente System.Data.SqlServerCe nella finestra di dialogo Aggiungi riferimento.
Nota: |
|---|
Nel computer in uso è possibile che vengano visualizzati nomi o percorsi diversi per alcuni elementi dell'interfaccia utente di Visual Studio nelle istruzioni seguenti. La versione di Visual Studio in uso e le impostazioni configurate determinano questi elementi. Per ulteriori informazioni vedere Impostazioni di Visual Studio. |
Programmazione efficiente
Per compilare ed eseguire il codice, è necessario disporre dei componenti riportati di seguito, altrimenti la riga da.Fill(dt); non viene eseguita e genera un'eccezione.
SQL Server CE installato nel dispositivo.
Tabella di database contenente alcuni dati per il test su un database SQLCE denominato Database.sdf. È possibile compilare questa tabella sul dispositivo utilizzando strumenti SQL CE o replicarla da un desktop SQL Server per generare il file con estensione sdf. È possibile aggiungere il file sdf al progetto o copiarlo manualmente nella directory specificata nella stringa di connessione.
Vedere anche
Concetti
Riferimenti
Smart Device (Procedure relative a C#)
Nota: