2

私は自分のドメインにこれ​​を持っています

public DbGeography Location { get; set; }

これは私のマッピングで

 this.Property(t => t.Location);

私のマッピングファイルでは、上記の行でエラーが発生します

Error   1   The type 'System.Data.Spatial.DbGeography' must be a non-nullable value type in order to use it as parameter 'T' in the generic type or method 'System.Data.Entity.ModelConfiguration.Configuration.StructuralTypeConfiguration<TStructuralType>.Property<T>(System.Linq.Expressions.Expression<System.Func<TStructuralType,T>>)'

EF 5 でこのエラーが発生したことはありません。

4

1 に答える 1

3

これは、EF6 のドキュメントをさらに掘り下げた結果、最終的に見つけた解決策です。

System.Data.Entity.dll へのアセンブリ参照を削除する

EF6 NuGet パッケージをインストールすると、次のランタイム アセンブリがプロジェクトに追加されます。

EF6 NuGet パッケージの最近のビルドでは、System.Data.Entity.dll への参照がプロジェクトから削除されます。

EF6 は System.Data.Entity.dll のコードを使用しないため、プロジェクトで参照すると、ビルドの競合が発生する可能性があります。

これらの競合は解決できますが、通常、同じアプリケーションで EF6 と System.Data.Entity.dll を使用しないでください。

これが同じ問題に直面している他の人の助けになることを願っています。

于 2013-06-22T09:36:25.553 に答える