Access ConnectionPooling

30/04/2010 - 16:07 von ChristianH | Report spam
Hi,

das Öffnen einer Access-ODBC-Connection dauert relativ lange.
Wir haben eine Komponente, die z.B. mit 200x mit einer RecordID aufgerufen
wird. In jedem Aufruf wird eine ODBCConnection geöffnet, die Daten abgerufen
und die Connection geschlossen. Der gesamte Vorgang dauert ca. 8 sec.
Wird die Connection nur 1x geöffnet und für alle 200 Leseaufrufe verwendet,
ist der gesamte Datenabruf performant (ca. 80 msec).
Ich dachte, dass .NET über einen ConnectionPool verfügt, und somit das
Öffnen einer ODBCConnection aus C# heraus von diesem bedient wird.

Kann ich eine ODBCConnection öffnen, halten und aus mehreren Threads
verwenden ohne Probleme zu bekommen (d.h. eine Art "eigener ConnectionPool")?

Danke
Christian
 

Lesen sie die antworten

#1 Stefan Falz [MVP]
30/04/2010 - 16:19 | Warnen spam
Hallo Christian,

"ChristianH" schrieb:

das Öffnen einer Access-ODBC-Connection dauert relativ lange.



Warum gerade ODBC? ODBC ist alt, lahm, alt, lahm und alt.

Wir haben eine Komponente, die z.B. mit 200x mit einer RecordID aufgerufen
wird. In jedem Aufruf wird eine ODBCConnection geöffnet



Aua. Wer hat das denn verbrochen?

Ich dachte, dass .NET à¼ber einen ConnectionPool verfà¼gt, und somit das
Öffnen einer ODBCConnection aus C# heraus von diesem bedient wird.



Selbst wenn ist das ziemlich unsinnig, 200 mal eine Connection zu
erstellen, zu öffnen.

Kann ich eine ODBCConnection öffnen, halten und aus mehreren Threads
verwenden ohne Probleme zu bekommen (d.h. eine Art "eigener ConnectionPool")?



Warum erstellst Du dir Connection nicht einfach einmal und übergibst die
dann dorthin, wo Du sie brauchst?

Tschau, Stefan
Microsoft MVP - Visual Developer ASP/ASP.NET
http://www.asp-solutions.de/ - Consulting, Development
http://www.aspnetzone.de/ - ASP.NET Zone, die ASP.NET Community

Ähnliche fragen