2009-08-03 41 views
3

Hier ist die Geschichte: Ich erstellte eine SQL Compact 3.5-Datenbank und verwendete SQLMetal.exe, um DataContext dafür zu generieren. Es funktionierte gut, aber bald erkannte ich, dass es einfach nicht meine Bedürfnisse entsprach, also entschied ich mich für SQL Express 2008. Ich habe genau das gleiche SQL-Skript wie beim Compact zum Erstellen eines Schemas gestartet und dann das SQLMetal.exe-Tool gestartet . Ich hatte nicht erwartet, dass der generierte DataContext anders sein würde, aber mir fehlten aus irgendeinem Grund alle Beziehungen.Warum generiert SQLMetal.exe unterschiedliche Ergebnisse für SQL Compact 3.5 und SQL Express 2008 (fremde Schlüssel fehlen)

Hier ist die SQL Compact Kommandozeile:

SQlMetal.exe /code:MyCode.cs MyDatabase.sdf 

Und hier ist der SQL Express 2008:

SQlMetal.exe /code:MyCode.cs /server:MyServer /database:MyDatabase 

Irgendwelche Ideen?

Antwort

1

Versuchen Sie SQL Server 2005. Es sollte gut funktionieren.

+1

Dies ist der Trick. Wäre es ein Bug 2008? – gavoja

+0

SQL2008 unterstützt zusätzliche Syntax, die in früheren Versionen nicht vorhanden war, daher kann die Syntax abweichen. –