1
単純なWaiverモデルがあります。オーバーライドされていないWaiverをすべて戻す問合せを作成したいと考えています。セルフ・ジョインとNHibernate Criteria APIを使用したオーバーライド・エンティティの問合せ
public class Waiver
{
private readonly int id;
protected Waiver()
{
this.id = 0;
}
public virtual int Id { get { return id; } }
public virtual string Name { get; set; }
public virtual string Description { get; set; }
public virtual bool IsRequired { get; set; }
public virtual DateTime EffectiveDate { get; set; }
public virtual Waiver OverriddenWaiver { get; set; }
}
ここでマップです。)今、私は署名公共のIList GetLatest(と私のリポジトリ内のメソッドを持ちたい
<class name="Waiver" table="Music_Waivers">
<id name="id" access="field" column="WaiverId" unsaved-value="0">
<generator class="native" />
</id>
<property name="Name" column="Name" />
<property name="Description" column="Description" />
<property name="IsRequired" column="IsRequired" />
<property name="EffectiveDate" column="EffectiveDate" />
<many-to-one name="OverriddenWaiver" class="Waiver" column="OverrideWaiverId" />
</class>
。なんらかの理由で、私はCriteriaAPIでこれを実装するのに苦労しています。私はこれをT-SQLで書くことができます。