Beim Debuggen einer ASP.Net MVC-Anwendung, die unter IIS Express ausgeführt wird, erhalte ich den folgenden Fehler, wenn ich versuche, den Mitgliedschaftsanbieter zu verwenden:
Die von der Anmeldung angeforderte Datenbank "MyDB" kann nicht geöffnet werden. Die Anmeldung ist fehlgeschlagen.
Anmeldung fehlgeschlagen für Benutzer 'MY-PC \ MyName'.
Ich habe versucht, die in
beschriebenen Schritte zu beheben %Vor%gibt eine ID zurück.
%Vor%gibt NULL
zurück %Vor%gibt die Fehlermeldung
zurückDer Login hat bereits einen Account unter einem anderen Benutzernamen.
Tatsächlich gibt es ein Login-Konto, das automatisch erstellt wird, als ich die Datenbank mit dem Namen
erstellt habedbo
welches auf MY-PC\MyName
abgebildet wird.
Meine Verbindungszeichenfolge ist
%Vor% In einer Produktionsumgebung würde ich wissen, wie man geeignete Benutzer und Anmeldungen erstellt. Ich bin fest, wie die Tatsache gelöst werden kann, dass IIS Express meinen Windows-Kontonamen verwendet, um sich in MyDB zu versuchen und sich anzumelden, wenn dieses Windows-Konto bereits mit dbo
verknüpft ist.
Es hat sich im ersten Katalogabschnitt der Verbindungszeichenfolge als Tippfehler herausgestellt.
Ich habe im Ereignisprotokoll einen Fehler wie
gesehenAnmeldung fehlgeschlagen für Benutzer 'MY-PC \ MyName'. Grund: Fehler beim Öffnen der explizit angegebenen Datenbank. [KUNDE:]
Dann sah ich auf der Registerkarte "Details" desselben Ereignisses, dass die Binärdaten In Bytes Informationen enthielten
%Vor%Beachten Sie, dass der letzte Teil von UTF-16 das Wort "Master" codiert. Das hat mich auf die Spur gebracht, dass die Verbindung zum master -Katalog hergestellt wird und nicht zum angeforderten, was dazu führt, dass der Tippfehler im Katalognamen in der Verbindungszeichenfolge bemerkt wird.
Es wäre so viel schöner gewesen, wenn Microsoft nur einen Fehler wie "Kein solcher Katalog: MyCatalog" gezeigt hätte.
Tags und Links sql-server authentication sql-server-2008