Ich habe ASP.NET Identity implementiert und es automatisch ASPNETDB.MDF und aspnetdb_log.ldf in meinem App_Data-Ordner erstellt. Ich habe bereits die AspNet-Tabellen (d. H. AspNetRoles, AspNetUsers usw.) in meiner SQL Express-Instanz (wo alle meine anderen Tabellen sitzen). Soweit ich sehen kann, liest und schreibt meine Anwendung Mitgliedschafts- und Rollendaten aus der SQL Express-Datenbank und nicht aus ASPNETDB.MDF.Wie kann ich ASPNETDB.MDF in LocalDB beenden?
ich meine Connection in web.config gesetzt haben:
<add name="DefaultConnection" connectionString="Data Source=MyComputerName\SQLEXPRESS;Initial Catalog=MyDatabaseName;Integrated Security=True" providerName="System.Data.SqlClient" />
Wenn ich jedoch ASPNETDB.MDF von App_Data entfernen, ich die folgende Fehlermeldung erhalten, wenn ich einloggen:
Ausnahmedetails: System .Data.SqlClient.SqlException: Eine oder mehrere Dateien stimmen nicht mit der primären Datei der Datenbank überein. Wenn Sie versuchen, eine Datenbank anzuhängen, wiederholen Sie die Operation mit den richtigen Dateien. Wenn es sich um eine vorhandene Datenbank handelt, ist die Datei möglicherweise beschädigt und sollte aus einer Sicherung wiederhergestellt werden. Benutzer-Standarddatenbank kann nicht geöffnet werden. Anmeldung fehlgeschlagen. Anmeldung fehlgeschlagen für Benutzer 'MyComputerName \ MyUserName'. Die Protokolldatei 'C: \ Users \ MyProjectName \ App_Data \ aspnetdb_log.ldf' stimmt nicht mit der primären Datei überein. Es kann aus einer anderen Datenbank stammen oder das Protokoll wurde möglicherweise zuvor neu erstellt
Der Fehler verschwindet, sobald ich ASPNETDB.MDF zurück zu App_Data hinzufügen.
Ich habe den gesamten Code in meiner Lösung gesucht und es gibt keinen Verweis auf ASPNETDB. Warum versucht es immer noch davon zu lesen?
Ich entwickle ASP.NET Web Forms auf .Net 4.5.
Bearbeiten Sie diese Verbindungszeichenfolge mit einer gültigen. –
Aswartha
Meine Verbindungszeichenfolge ist bereits connectionString =" Datenquelle = MyComputerName \ SQLEXPRESS; Initial Catalog = MyDatabaseName; Integrated Security = True " . Es zeigt nicht auf eine MDF-Datei, sondern auf meine SQLEXPRESS-Datenbank. – Windhoek
Was ist der NAME dieser Verbindung? StringconnectionString = "Datenquelle = MeinComputerName \ SQLEXPRESS; Erster Katalog = MeinDatenbankname; Integrierte Sicherheit = True" sollte identisch sein mit
Aswartha