作業が難しい古いスキーマを持つ古いテーブルがいくつかあります。
NHibernate を使用して、このデータの一部をより適切なモデルに変換することは可能ですか?
たとえば、いくつかのプロパティに分割したい整数のステータス列があるとします。
Legacy status: 0 - Active, 1 - Inactive, 2 - TemporarilyInactive, 3 - etc
次のようなものが必要です。
bool IsActive { get; set; }
Status Status { get; set; }
(Status
列挙型はどこにありますか)
protected
ステータスを取得できるフィールドを使用し、追加のプロパティのゲッターを定義して、バッキング フィールドに基づいて適切な値を返すことができることはわかっていますが、これにより、これらに基づいてクエリを実行する機能が無効になると確信しています。プロパティ。
ただし、これでは、 などのクエリを実行して.Query(p => p.IsActive)
、それを などの SQL に変換することはできませんwhere status = 0
よね?
カスタムを介して唯一の方法IUserTypes
ですか?IUserType
もしそうなら、これを達成するために簡単に作業できるヘルパーフレームワークはありますか?
他の人はこれをどのように処理しますか?