Si potrebbe desiderare di leggere su pool di connessioni: http://msdn.microsoft.com/en-us/library/8xx3tyca.aspx
viene creato un pool di connessioni separato per ogni stringa di connessione distinti. Inoltre, se si effettua la connessione tramite la sicurezza integrata e il proprio sito Web utilizza l'autenticazione di base o di Windows (anziché quella anonima), verrà creato un pool di connessioni separato per ciascun utente del sito Web.
Per cancellare i pool di connessione, l'oggetto SqlConnection
fornisce i metodi ClearPool()
e ClearAllPool() `. Tuttavia, una singola connessione non verrà chiusa e rimossa dal pool finché non verrà chiusa o eliminata.
Tutti i vari oggetti coinvolti nell'esecuzione della query sql che implementa IDisposable
devono essere racchiusi in una dichiarazione using
per garantire uno smaltimento corretto. Qualcosa in questo senso:
IEnumerable<BusinessObject> list = new List<BusinessObject>() ;
using (SqlConnection connection = new SqlConnection(credentials))
using (SqlCommand command = connection.CreateCommand())
using (SqlDataAdapter adapter = new SqlDataAdapter(command))
using (DataSet results = new DataSet())
{
command.CommandType = CommandType.StoredProcedure ;
command.CommandText = @"someStoredProcedure" ;
try
{
connection.Open() ;
adapter.Fill(results) ;
connection.Close() ;
list = TransformResults(results) ;
}
catch
{
command.Cancel() ;
throw
}
}
return list ;
È possibile esaminare quello SPID sono aperti in SQL Server o eseguendo la stored procedure sp_who
(deve disporre delle autorizzazioni di amministratore appropriate in SQL Server). Puoi anche usare perfmon.
fonte
2012-08-09 03:45:57
Cosa RDBMS? AFAIK, l'unico modo per farlo è interrogare direttamente il servizio del database e questo è molto diverso per ogni gusto. –
Se si sta eseguendo il debug, provare a 'sp_who2' –
sp_who2 fornisce dettagli sull'utente di accesso, ma come sua applicazione web lo stesso utente può aprire più connessioni sul database.Voglio il numero di connessioni aperte sul database usando la mia applicazione web ed è asp.net. –