私は次のクラスを持っています
public class Product
{
public virtual int Id { get; set; }
public virtual double Price { get; set; }
public virtual string Description { get; set; }
}
監査テーブルは次のようになります
CREATE TABLE Product_AUD (
Id integer not null,
REV integer not null,
Price float,
Price_MOD bit,
Description varchar(255),
Description_MOD bit,
REVTYPE tinyint not null,
primary key (id, REV)
);
私のクエリは次のようになります
var revisionEntityInfos =
Session.Auditer().CreateQuery()
.ForHistoryOf<Product, DefaultRevisionEntity>()
.Add(AuditEntity.Id().Eq(ProductId))
.Add(AuditEntity.Or(AuditEntity.Property("Description").HasChanged(),
AuditEntity.Property("Price").HasChanged()))
.Results();
これまでのところ、これは機能し、IEnumerable<Product, DefaultRevisionEntity>
. Description
プロパティ、プロパティ、Price
またはその両方が変更されたすべてのリビジョンを取得します。RevisionId
との情報RevisionDate
が含まれています。
しかし、これをユーザーに表示したいので、各リビジョンで変更されたプロパティも確認したいと思います。基本的にHasChanged
、結果にフラグを付けたいと思います。これは可能ですか?