Neulich hatte ich das Problem, dass ich hier lokal auf dem SQL Server 2008 entwickel, aber unsere Livesysteme noch den SQL Server 2005 haben.
Das ist im grossen und ganzen ja kein Problem, allerdings versucht das Mapping-Tool vom Entity Framework immer das Datenbankschema zu benutzen, dass bei der Entwicklung benutzt worden ist, wass dann zu solchen Fehlern führt:
- Serverfehler in der Anwendung /.
- Die verwendete SQL Server-Version unterstützt nicht den Datentyp
- Beschreibung: Unbehandelte Ausnahme beim Ausführen der aktuellen Webanforderung. Überprüfen Sie die Stapelüberwachung, um weitere Informationen über diesen Fehler anzuzeigen und festzustellen, wo der Fehler im Code verursacht wurde.
-
- Ausnahmedetails: System.ArgumentException: Die verwendete SQL Server-Version unterstützt nicht den Datentyp
Serverfehler in der Anwendung /.Die verwendete SQL Server-Version unterstützt nicht den Datentyp 'datetime2'.Beschreibung: Unbehandelte Ausnahme beim Ausführen der aktuellen Webanforderung. Überprüfen Sie die Stapelüberwachung, um weitere Informationen über diesen Fehler anzuzeigen und festzustellen, wo der Fehler im Code verursacht wurde.Ausnahmedetails: System.ArgumentException: Die verwendete SQL Server-Version unterstützt nicht den Datentyp 'datetime2'.
Man kann aber das Visual Studio auch dazu bringen, den Code für den 2005’er zu kompilieren, indem man das .edmx im Texteditor öffnet, und ganz am Anfang das Attribut ProviderManifestToken von “2008” zu “2005” ändert. neu Builden, und … na meistens kommt dann so ein Fehler:
- Serverfehler in der Anwendung /.
- --------------------------------------------------------------------------------
-
- Das angegebene Schema ist ungültig. Fehler:
- Model1.ssdl(108,6) : Fehler 0040: Typ date ist nicht mit einem Namespace oder Alias qualifiziert. Nur PrimitiveTypes können ohne Qualifizierung verwendet werden.
- Beschreibung: Unbehandelte Ausnahme beim Ausführen der aktuellen Webanforderung. Überprüfen Sie die Stapelüberwachung, um weitere Informationen über diesen Fehler anzuzeigen und festzustellen, wo der Fehler im Code verursacht wurde.
-
- Ausnahmedetails: System.Data.MetadataException: Das angegebene Schema ist ungültig. Fehler:
- Model1.ssdl(108,6) : Fehler 0040: Typ date ist nicht mit einem Namespace oder Alias qualifiziert. Nur PrimitiveTypes können ohne Qualifizierung verwendet werden.
-
- Quellfehler:
-
- Beim Ausführen der aktuellen Webanforderung wurde einen unbehandelte Ausnahme generiert. Informationen über den Ursprung und die Position der Ausnahme können mit der Ausnahmestapelüberwachung angezeigt werden.
Serverfehler in der Anwendung /.--------------------------------------------------------------------------------Das angegebene Schema ist ungültig. Fehler: Model1.ssdl(108,6) : Fehler 0040: Typ date ist nicht mit einem Namespace oder Alias qualifiziert. Nur PrimitiveTypes können ohne Qualifizierung verwendet werden.Beschreibung: Unbehandelte Ausnahme beim Ausführen der aktuellen Webanforderung. Überprüfen Sie die Stapelüberwachung, um weitere Informationen über diesen Fehler anzuzeigen und festzustellen, wo der Fehler im Code verursacht wurde. Ausnahmedetails: System.Data.MetadataException: Das angegebene Schema ist ungültig. Fehler: Model1.ssdl(108,6) : Fehler 0040: Typ date ist nicht mit einem Namespace oder Alias qualifiziert. Nur PrimitiveTypes können ohne Qualifizierung verwendet werden.Quellfehler: Beim Ausführen der aktuellen Webanforderung wurde einen unbehandelte Ausnahme generiert. Informationen über den Ursprung und die Position der Ausnahme können mit der Ausnahmestapelüberwachung angezeigt werden.
Tataaaaa…. jetzt muss man noch (wieder im .edmx und per Textedior ) alle Type="date” in Type="datetime" ändern, und dann sollte es aber funktionieren.
Ich habe diesen Tipp hier gefunden
3c8f755b-4994-4ea0-9c09-463f8d1a1d0d|0|.0