none
Database connection constantly open or not? RRS feed

  • Frage

  • All,

    I am new to LightSwitch and I was wondering if the database connection remains always open while the LightSwitch application is running? Or is the connection only established if a database operation is executed?

    Also is it possible to work with database aliases?

    Thank you for your help!

    Tim

    Freitag, 14. Juni 2013 13:20

Antworten

  • Hallo Tim,

    in der Regel wird eine Datenbank nur für die Zeitspanne geöffnet, in der man sie auch benötigt. Die Automatismen (also bspw. bei Controls, die eigenständig Datenbankverbindungen öffnen und schließen) ist es meist so, dass diese für jedes Command eine eigene Connection erstellen. Bei Verwendung von ConnectionPooling ist das oft auch Ok.

    Wenn ich mir allerdings die vielen Foreneinträge zum Thema "Lightswitch verliert die Datenbankverbindung" anschaue, könnte es auch sein, dass die Verbindung doch (bis zum Timeout) dauerhaft geöffnet bleibt. Das kannst Du aber eigentlich auch schnell selbst über das SSMS sehen. Führ dort mal

    EXEC sp_who2

    aus. Damit hast Du schon mal eine Übersicht über die Verbindungen bzw. Prozesse.

    Ich persönlich mache das immer von den genauen Anforderungen an die Anwendung abhängig. Bspw. öffne ich in meinen ASP.NET Anwendungen nur eine Datenbankverbindung beim Start des Requests und schließe die, wenn der Request abgearbeitet ist. Eine dauerhafte Verbindung über längere Zeit halte ich nicht offen und das sollte man (von Ausnahmen, wo es benötigt wird mal abgesehen) auch nicht gemacht werden.

    Was Du mit der zweiten Frage meinst, hab ich nicht verstanden.


    Gruß, 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

    Freitag, 14. Juni 2013 15:42
    Moderator