Ich benutze EF 6 und bekomme einen seltsamen Fehler bei einem meiner Modelle:
Die Feldkonfiguration ist:
Property(x => x.IncidentLocationGps).HasColumnName("IncidentLocationGPS").IsOptional();
Und der Fehler ist:
Der Typ 'System.Data.Spatial.DbGeography' muss ein Nicht-Nullable-Werttyp sein, um ihn als Parameter 'T' im generischen Typ oder der Methode
System.Data.Entity.ModelConfiguration.Configuration.StructuralTypeConfiguration<TStructuralType>.Property<T>(System.Linq.Expressions.Expression<System.Func<TStructuralType,T>>
)
Vielen Dank im Voraus für Ihre Hilfe
Dies war die Lösung, die ich am Ende fand, nachdem ich ein wenig weiter in die EF6-Dokumentation gegraben hatte.
Entfernen von Assemblyverweisen auf System.Data.Entity.dll
Wenn Sie das EF6 NuGet-Paket installieren, werden Ihrem Projekt die folgenden Laufzeitassemblys hinzugefügt:
Kürzlich erstellte Builds des EF6 NuGet-Pakets entfernen den Verweis auf System.Data.Entity.dll aus dem Projekt.
EF6 verwendet keinen Code aus System.Data.Entity.dll, und wenn es in Ihrem Projekt referenziert wird, kann das zu Konflikten führen.
Diese Konflikte können gelöst werden, aber im Allgemeinen sollten Sie EF6 und System.Data.Entity.dll nicht in derselben Anwendung verwenden.
Ich hoffe, dass dies jedem helfen kann, der das gleiche Problem hat.