私のクラスライブラリプロジェクトは、EntityFramework5アセンブリを参照しています。以下のコードの「AvailablePoints」の.NETタイプはDecimalです。CodeFirst Fluent API構成を使用して、このプロパティをSQL Serverのdecimal(9,4)データ型にマップし、データエントリが小数点以下2桁で切り捨てられないようにしようとしています。これは、デフォルトのマッピングです。
protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
modelBuilder.Entity<EventGroup>().Property(g => g.AvailablePoints).HasPrecision(9,4);
base.OnModelCreating(modelBuilder);
}
次のコンパイラエラーが発生します。
「タイプ'System.Data.Spatial.DbGeography'は、参照されていないアセンブリで定義されています。アセンブリ' System.Data.Entity、Version = 4.0.0.0、Culture = neutral、PublicKeyToken=b77a5c561934e089'への参照を追加する必要があります。 。
.Property(g => g.AvailablePoints).HasPrecision(9,4);
メソッドの最初のステートメントから削除すると、正常にコンパイルされます。EF5のドキュメントやフォーラムの投稿では、このコンパイラエラーに対処したり、このFluentAPI構成がSystem.Data.Spatial.DbGeography
タイプにどのように関連しているかを説明したりしていません。