我有一個包含關聯對象列表的類。Nhibernate一對多標準
我有如下圖吧:
<class name="MyDto" table="`MyView`" mutable="false" lazy="false">
<id name="Id" column="ID" type="int">
<generator class="assigned" />
</id>
<set name="Days" cascade="all-delete-orphan" lazy="false" >
<key column="Id" />
<one-to-many class="MyAssociatedObj"/>
</set>
</class>
<class name="MyAssociatedObj" table="V_SC_NEED" mutable="false" lazy="false" >
<id name="Id" column="`ID2`" type="int">
<generator class="assigned" />
</id>
<property type="DateTime" not-null="true" name="DayDate" column="`Date`" />
<component name="Audit">
<property type="string" not-null="true" length="255" name="Username" column="`USERNAME`" />
<property type="decimal" not-null="true" name="PreviousValue" column="`PrevVal`" />
</component>
</class>
我想要做的是讓MyDto對象名單,由我關聯的對象,MyAssociatedObject過濾。
這意味着,例如,如果我這樣做:
UnitOfWork.Session.CreateCriteria<MyDto>().List<MyDto>()
我得到的42行的列表。 現在,我想通過關聯對象來過濾它們之間的限制。 的問題是,當我這樣做:
UnitOfWork.Session.CreateCriteria<MyDto>().CreateAlias("Days", "days").Add(Restrictions.Between("days.DayDate", query.FromDate, query.ToDate));
我得到,不知何故684行! (一些cartesial產品或東西)。
有沒有建議嗎? 非常感謝!
你可以發佈你的MyDto的equals方法嗎? – Firo