hallo,
habe da im WWW schon viel gesucht zum Thema "Wie realisiert man eine persistente Datenbankverbindung unter ASP.NET", konnte aber bis dato noch nichts sinnvolles finden. Ein Kollege von mir meinte, er würde in den WinForms die Verbindungsinformation immer ans nächste Element weiterreichen, aber sowas geht ja bei ASP.NET nicht unbedingt.
Worum gehts konkret: Ich arbeite z.Z. an einem Online-Shop- und Katalog-System in ASP.NET und C#. Darin werden u.a. Bilder und RTF-Texte aus der Datenbank ausgelesen (und im letzteren Fall automatisch nach HTML konvertiert). Der Bildausgabe-Part ist komplett in C# geschrieben, da auf ASP.NET-Seite (also der aspx-Datei) nur noch die Ausgabe erfolgt und somit keinerlei störenden HTML-Elemente vorhanden sein dürfen (ist ja logisch - sonst macht der Browser nicht mit!).
Dickes Problem nun: Wenn ich etwa in einer Unterkategorie die Bilder anzeigen lasse (und wenns nur 9 Stück sind), bekomme ich lokal nur manchmal, online auf dem Testserver aber fast regelmäßig Timeouts, Verbindungsabbrüche und sonstige damit verbundenen Fehlermeldungen.
Ich und angesprochener Kollege haben daran die letzten Tage gearbeitet, so dass nun möglichst nur eine einzige Verbindung einmal aufgemacht und dann wieder geschloßen wird. Aber das macht dann immer noch mindestens 9 + 1 Einzelverbindungen pro User - bei 10 Usern auf der Seite haben wir also 100 Einzelverbindungen auf einen Schlag. Das ist natürlich nicht im Sinne des Erfinders.
Unter PHP gibt es sogenannte persistente Datenbankverbindungen, dabei wird eine Verbindung einmalig aufgebaut und bleibt erhalten, bis sie explizit geschlossen wird - auch über Dateiweiterleitungen etc. hinaus. Leider gibt es sowas offenbar nicht unter .NET, zumindest ist mir nichts darüber bekannt.
Weiß hier jemanden einen guten Ansatz dafür, vielleicht ein Tutorial oder Beispiel?
Danke schon mal im Voraus,
cu, w0lf.