Metodo migliore per gestire connessioni a database

giovedì 16 giugno 2011 - 09.48
Tag Elenco Tags  C#  |  .NET 4.0  |  Visual Studio 2010  |  SQL Server 2008

voyager18 Profilo | Junior Member

Ciao a tutti! Nella mia applicazione ASP.NET ho creato una classe statica con dei metodi statici che leggono i dati dal database e li restituiscono al chiamante sotto forma di classi. Fin qui tutto bene, il problema viene alla gestione della connessione al db. Nella classe statica ho inserito due metodi: Open e Close rispettivamente per aprire e chiudere la connessione. La procedura di lettura dati avviene in questo modo:

1. Apertura connessione con il metodo della classe statica
2. Chiamata del metodo di lettura dati della classe statica
3. Chiusura connessione con il metodo della classe statica

Il problema viene quando ad esempio nel sito ci sono due utenti: il primo utente si trova tra i punti 1 e 2 e invece il secondo utente si trova al punto 3. In questo modo il secondo utente mi chiude la connessione che ha aperto il primo utente e quindi quando il primo utente va a leggere i dati dal db ottiene un errore.

Come posso evitare ciò? Non so se ho esposto chiaramente quale è il problema.

Gluck74 Profilo | Guru

Ti ho risposto qui: http://forum.html.it/forum/showthread.php?s=&postid=13355876#post13355876


____________
Ricordati di utilizzare il tasto "Accetta" se i nostri consigli ti sono serviti a risolvere il problema.
È il modo per ringraziare chi ti ha aiutato.

alx_81 Profilo | Guru

>Ti ho risposto qui: http://forum.html.it/forum/showthread.php?s=&postid=13355876#post13355876
>
giusto per consigliare i costrutti nuovi del .net prendi spunto anche da questo post:
http://www.dotnethell.it/forum/messages.aspx?ThreadID=38489

così vedi anche la using che dovrai usare per disallocare per bene ogni connessione creata.
--
Alessandro Alpi | SQL Server MVP
MCP|MCITP|MCTS|MCT

http://www.alessandroalpi.net
http://blogs.dotnethell.it/suxstellino
http://mvp.support.microsoft.com/profile/Alessandro.Alpi
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2017
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5