1

コードで NHibernate マッピングを使用して、サーバー (SQL Server 2008) とクライアント (SQL Server CE 3.5) の両方でテーブルを作成しています。

この1列

Property(x => x.Latitude, c =>
                       {
                         c.Precision(10); 
                         c.Scale(8); 
                         c.NotNullable(false);
                       });

を生成するサーバー上で優れた動作をしますdecimal(10,8)

しかし、SQL Server CE クライアントでは、numeric(19,0)?が生成されます。ここでマッピングに何か問題がありますか? 私はNHibernate 3.3.2を使用しています。

4

2 に答える 2

0

NHibernate Jira トラッカーでこの問題を報告しました。

当面の回避策は、DB で実際の型を使用することです。

Property(x => x.Longitude, c =>
        {
            c.Column(x => x.SqlType("real"));
            c.NotNullable(false);
        });
        Property(x => x.Latitude, c =>
        {
            c.Column(x => x.SqlType("real"));                
            c.NotNullable(false);
        });

C# プロパティは引き続き Decimal です。

于 2013-06-18T12:35:50.807 に答える