Ich habe ein einfaches Problem, liest eine Excel-Datei (mit Interop) und füllt eine MSSQL-Datenbank-Datei mit einigen Daten daraus extrahiert. Das ist soweit in Ordnung. Ich habe ein Geschäft Tabelle mit den folgenden Feldern:LINQ to SQL - Die Datenbank generiert einen Schlüssel, der bereits verwendet wird
- ID: int, automatisch generiert, auto-sync: auf dem Einsatz
- Name: String
- Settlement: string
- Landkreis: string
- Adresse: string
las ich die Excel-Datei, und dann eine neue Shops erstellen Objekt und den Namen, die Abrechnung, County und Anschrift propert gesetzt Ich rufe Shops.InsertOnSubmit() mit dem neuen Shop-Objekt an.
Danach muss ich die Datenbank zurücksetzen (zumindest die Tabelle), für die der einfachste Weg, den ich gefunden habe, war, die DeleteDatabase() -Methode aufzurufen und CreateDatabase() erneut aufzurufen. Das Problem ist, dass nach dem ersten Reset, wenn ich versuche, die Tabelle erneut zu füllen, bekomme ich die Ausnahme: Die Datenbank generiert einen Schlüssel, der bereits verwendet wird.
Darüber hinaus kann ich diese Datenbankdatei nicht mehr verwenden, da DatabaseExists() FALSE zurückgibt, aber wenn ich die CreateDatabase() Methode aufruft, löst es eine Ausnahme aus, dass die Datenbank bereits existiert (obwohl die Datendateien sind nicht vorhanden).
Was mache ich falsch? Vielen Dank im Voraus!
Vielen Dank, habe ich den Datenkontext nach dem Löschen der Datenbank entsorgt und dann wieder instantiiert und neu erstellt, so dass es jetzt funktioniert. Vielen Dank! Noch eine Sache: Wie kann ich die von mir erstellten Datenbanken "freigeben"? MSSQL erlaubt mir nicht, Datenbanken mit diesem Namen zu erstellen ... – ShdNx
Ich weiß nicht, fürchte ich. –
Danke. Ich hatte ein ähnliches Problem, weil ich ASP.Net Development Server bei der Neuverteilung der Datenbank ausgeführt habe. Ich muss daran denken, den Development Server vor der erneuten Bereitstellung herunterzufahren. –