2011-06-22 9 views
0

私はnHibernateでアクセスしているクライアントのデータベースを持っています。あるテーブルでは、プライマリキーがあり、は0から始まる自動インクリメントを受けます。。クライアントのデータベースを1ベースの自動インクリメントに変更することはできません。プライマリキーの値が0のデータベースレコードにどのように保存しますか?

外部キーを持つテーブルに子レコードを保存しようとすると、次のエラーが表示されます。「nullでないプロパティがnull値または一時的な値を参照しています。この問題は、プライマリキーの値が0であるレコードの子を保存したときにのみ検出され、他のレコードは正常に動作します。

これは、親テーブル

と外部キー関係マップのジェネレータです:

質問:どのように私は、主にデータベースレコードに保存しますキー値= 0?

答えて

0

私はあなたのマッピングを参照してくださいカントが、私は

public ParentMap() 
{ 
    Id(x => x.Id).GeneratedBy.Increment().UnsavedValue(-1); 
} 

public Parent() 
{ 
    Id = -1; 
} 
をしようとするだろう
関連する問題