Around and About .NET World

Il blog di Marco Minerva
posts - 1671, comments - 2232, trackbacks - 2135

My Links

News

Contattami su Live Messenger:


MCTS: Windows, Web, Distributed Applications & SQL Server

MCPD: Enterprise Applications

Tag Cloud

Archives

Post Categories

Links

venerdì 21 settembre 2007

DataAdapter e apertura della connessione

I DbDataAdapter di .NET si basano su oggetti di tipo DbCommand per selezionare, aggiornare, aggiungere ed eliminare le informazioni dalla base di dati sottostante. Gli oggetti DbCommand, a loro volta, mantengono un riferimento alla DbConnection che corrisponde all'origine dati in questione. Tale connessione non deve necessariamente essere aperta prima di richiamare i metodi del DbDataAdapter: nel caso in cui sia chiusa quando si eseguono i metodi del DbDataAdapter, viene aperta automaticamente, per poi essere richiusa al termine dell'operazione.

E' possibile verificare questo comportamento con un semplice esempio. Consideriamo il seguente stralcio di codice:

1 SqlConnection db = new SqlConnection(@"Data Source=192.168.0.212\SQLEXPRESS; 2 Initial Catalog=Northwind;Integrated Security=True;"); 3 db.StateChange += new StateChangeEventHandler(db_StateChange); 4 db.Open(); 5 6 SqlCommand cmd = db.CreateCommand(); 7 cmd.CommandType = CommandType.Text; 8 cmd.CommandText = "SELECT * FROM Customers;"; 9 10 SqlDataAdapter da = new SqlDataAdapter(cmd); 11 DataSet ds = new DataSet(); 12 da.Fill(ds, "Customers"); 13 14 private void db_StateChange(object sender, StateChangeEventArgs e) 15 { 16 Response.Write(e.CurrentState + "<br/>"); 17 }

In questo caso, la connessione viene manualmente aperta (riga 4) prima di richiamare i metodi del DataAdapter: l'evento StateChange viene generato una sola volta, poiché la connessione, essendo già aperta prima di richiamare il metodo Fill (riga 12), rimane in questo stato anche al termine dell'operazione.

Commentando la riga 4, invece, il comportamento cambia: la connessione verrà aperta per l'esecuzione del metodo Fill (riga 12) e sarà chiusa automaticamente al termine dell'operazione. In altri termini, l'evento StateChange viene generato due volte.

Technorati tags: , , ,

posted @ lunedì 1 gennaio 0001 00:00 | Feedback (0) | Filed Under [ C# ADO .NET & SQL ASP .NET ]

Release Candidate 0 per il Service Pack 1 di Windows Vista

Come si può leggere in questo post, tra poco sarà rilasciata una nuova release del Service Pack 1 di Windows Vista, più precisamente la numero 6.0.6001.16655 (longhorn_rc0.070907-1905). Il numero di versione, dunque, lascia intuire che si tratta delle Release Candidate 0.

Technorati Tags: ,

posted @ lunedì 1 gennaio 0001 00:00 | Feedback (1) | Filed Under [ Windows Related Updates & Service Pack ]

[70-528] E' la volta del Web...

Da qualche giorno ho cominciato a studiare per l'esame 70-528, in modo da ottenere la certificazione MCTS anche nell'area Web Applications. Rimanendo coerente con quanto fatto finora, anche stavolta sto utilizzando il Self-Paced Training Kit di Microsoft. Dalla prima impressione mi sembra fatto abbastanza bene, sicuramente meglio di quello relativo all'esame 70-526...

Technorati Tags:

posted @ lunedì 1 gennaio 0001 00:00 | Feedback (0) | Filed Under [ Certificazioni ]

Nuovi Starter Kit per Windows Mobile 6

Sono stati resi disponibili nuovi Starter Kit per Windows Mobile 6. All'indirizzo http://msdn2.microsoft.com/en-us/windowsmobile/bb264330.aspx si possono trovare due applicazioni scritte in C# e quattro in C++.

Technorati Tags: ,

posted @ lunedì 1 gennaio 0001 00:00 | Feedback (0) | Filed Under [ .NET Compact Framework ]

Dove trovare la lista di tutti gli esami di certificazione Microsoft

Gli esami di cerificazione Microsft sono numerosi... Per fortuna in questa pagina è disponibile la loro lista completa, divisa per numero, nome e tipo.

Technorati Tags:

posted @ lunedì 1 gennaio 0001 00:00 | Feedback (0) | Filed Under [ Certificazioni ]

Powered by:
Powered By Subtext Powered By ASP.NET