6

Aug

MCTS 70-516: Accesso ai dati tramite .NET 4! Parte 3

Ciao a tutti, in questa lezione parleremo della connessione al data source. Le librerie di ADO.NET  contengono delle classi (presenti nel namespace System.Data) che servono per la connessione tra il data store e l’applicazione client. Le classi responsabili dello spostamento dei dati tra le classi disconnesse e i data store sono chiamate Provider classes. .Net Framework  contiene i seguenti provider:

  • OleDB : Contiene le classi per generare l’accesso ai dati da diversi data store . Può essere usato per Sql Server 6.5 e antecedenti, SyBase, DB2/400 e Microsoft Access.
  • Odbc:Contiene le classi per generare l’accesso ai dati da diversi data store .
  • Sql Server: Contiene le classi per generare l’accesso ai dati verso Sql Server 7 e versioni superiori.

Come prima cosa per connetterci ad una fonte dati dobbiamo impostare la Stringa di connessione ( per le varie stringe di connessione vi suggerisco questo sito) e poi aprire la connessione come nel seguente codice:

var connection = new SqlConnection();
connection.ConnectionString =
"Server=.;Database=Northwind;Trusted_Connection=true";
connection.Open();
//Facciamo qualcosa qui
connection.Close();

Ricordatevi sempre di chiudere la connessione alla fine di tutto il processo!

Uno dei prodotti da prendere in considerazione per iniziare ad entrare in questo mondo è sicuramente Sql Express. Questo è un prodotto free, facile da installare ed usare, ed è basato sulla tecnologia di Sql Server. Di solito viene usato anche per la creazione di piccoli siti web o per applicazioni lato cliente con singolo utente. Per collegarci ad un database Sql Express si può utilizzare la seguente stringa di connessione:

Data Source=.\SQLEXPRESS;
AttachDbFilename=C:\MyApplication\Northwind.MDF;
Integrated Security=True;
User Instance=True;

In questo esempio, il data source è settato in una istanza di Sql Express chiamata .\SQLEXPRESS, e il nome del file di database è Northwind.MDF.Tramite la stringa “User Instance=True;” gli diciamo che vogliamo accedere al database con l’account attualmente connesso. Un accorgimento importante da tenere in considerazione è quello di inserire il file del database nella cartella DataDirectory del progetto! Questo ci permette di raggiungere sempre il nostro database modificando la stringa di connessione in questo modo:

Data Source=.\SQLEXPRESS;
AttachDbFilename=|DataDirectory|\Northwind.MDF;
Integrated Security=True;
User Instance=True;

La stringa di connessione possiamo impostarla nel file di configurazione del nostro progetto nell’elemento ConnectionString:


connectionString="Data Source=.\SQLEXPRESS;
AttachDbFilename=|DataDirectory|Northwind.MDF;
Integrated Security=True;
User Instance=True"/>

Per poter recuperare il file di configurazione lato codice su fa così:

var nw = ConfigurationManager.ConnectionStrings["nw"];
var connection = new SqlConnection(nw.ConnectionString);
//name = "nw"
var name = nw.Name;
//provider = "System.Data.SqlClient"
var provider = nw.ProviderName;

var cnString = nw.ConnectionString;
MessageBox.Show("From App.Config: " + cnString);

Microsoft ci da la possibilità di crittografare le connection strings presenti nel file .config per evitare che qualsiasi persona possa vederla! Per fare questo dobbiamo utilizzare aspnet_regiis.exe tramite prompt:

aspnet_regiis -pef "connectionStrings" "C:\...\EncryptWebSite"

Per maggiori informazioni sui parametri potete utilizzare il parametro /?.

Per questa lezione è tutto… ora sappiamo come possiamo collegarci al nostro data source. Nella prossima lezione vedremo come tramite poche righe di codice possiamo inserire, modificare, selezionare e cancellare le righe sul nostro database.

Buona giornata e alla prossima!

 

Carmine Punella

by Carmine Punella on 8/6/2011
Post archive