4 Stimmen

SQL Server-Anmeldefehler mitten im Anwendungslauf

Ich habe eine Anwendung, die plötzlich die folgende Ausnahme auslöst:

System.Data.SqlClient.SqlException: Anmeldung für Benutzer 'username' fehlgeschlagen.

Der Benutzername und das Kennwort sind korrekt, und die Anwendung führt einige Abfragen/Einfügungen unter Verwendung desselben Logins durch, bevor sie die Ausnahme auslöst.

Was sind weitere Gründe, warum eine Anmeldung scheitern kann? Verfügt SQL Server über eine Standardhöchstzahl an Verbindungen, die möglicherweise erreicht wurde? Ich verwende LINQ to SQL - hat die Tatsache, dass ich einen DataContext wiederverwende, um mehrere Datenzeilen einzufügen, anstatt jedes Mal einen neuen zu erstellen, irgendwelche relevanten Konsequenzen?

3voto

Jacob Punkte 75084

Unter Verwendung desselben DataContext für mehrere sequenzielle Operationen ist völlig in Ordnung, aber stellen Sie sicher, dass Sie nicht die DataContext zwischen mehreren Threads. Wenn Sie z. B. eine ASP.NET-Anwendung erstellen, stellen Sie sicher, dass jede neue Anfrage ihre eigene DataContext .

0voto

MCS Punkte 21303

Ich denke, das Problem lag an der Art und Weise, wie ich DataContexts erstellte - ich behielt einen in der Klasse und erstellte jedes Mal einen neuen methodenlokalen Kontext, wenn ich eine Aktualisierung vornahm (siehe aquí für weitere Einzelheiten). Ich habe den Code so umgestaltet, dass für jede Transaktion ein neuer DataContext erstellt wird, und der Fehler ist verschwunden.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X