Я столкнулся с проблемой при попытке обновить дочерний элемент в родительском классе
public class Parent
{
public virtual int Id { get; set; }
public virtual string Name { get; set; }
public virtual IList<Child> MyChildren { get; set; }
}
public class Child
{
public virtual int Id { get; set; }
public virtual string Name { get; set; }
public virtual Parent MyParent { get; set; }
}
Что я могу сделать, это взять один элемент из списка MyChildren и изменить его, но при вызове метода SaveOrUpdate из сеанса MyClildren не сохраняется.
Примечание: если другие поля в родительском поле изменяются, оно обновляется в БД.
Обновление:
<class name="Parent" table="Parent" lazy="true">
<id name="id" column="ID" type="int">
<generator class="identity" />
</id>
<bag cascade="all" lazy="true" name="MyChildren">
<key column="ID"/>
<one-to-many class="SND.Domain.Model.Child" />
</bag>
</class>
<class name="Child" table="Child" lazy="true">
<id name="id" column="ID" type="int">
<generator class="identity" />
</id>
<!-- Here i have another reference -->
<many-to-one name="AnotherEntity" class="SND.Domain.Model.AnotherEntity" column="entity_ID"/>
<property name="Name" column="Name" type="string" not-null="false" />
</class>
Спасибо,
Педро