I have an Account class that can have many roles
Here is the mapping for Account:
Code:
<?xml version="1.0" encoding="utf-8" ?>
<hibernate-mapping xmlns="urn:nhibernate-mapping-2.2">
<class name="Diangy.OnlineServiceFramework.Core.Accounts.Account, Diangy.OnlineServiceFramework.Core" table="Accounts" lazy="false">
<id name="AccountId" type="Int32">
<generator class="native" />
</id>
<property name="EmailAddress" />
<property name="Password" />
<property name="Status" />
<bag name="Roles" inverse="true" cascade="all-delete-orphan" lazy="true">
<key column="AccountId" />
<one-to-many class="Diangy.OnlineServiceFramework.Core.Accounts.Role, Diangy.OnlineServiceFramework.Core" />
</bag>
</class>
</hibernate-mapping>
Here is the mapping for role:
Code:
<?xml version="1.0" encoding="utf-8" ?>
<hibernate-mapping xmlns="urn:nhibernate-mapping-2.2">
<class name="Diangy.OnlineServiceFramework.Core.Accounts.Role, Diangy.OnlineServiceFramework.Core" table="Roles" lazy="false">
<id name="RoleId" type="Int32">
<generator class="native" />
</id>
<property name="Name" />
<property name="ApplicationName" />
<many-to-one name="Account" column="AccountId" class="Diangy.OnlineServiceFramework.Core.Accounts.Account, Diangy.OnlineServiceFramework.Core" not-null="true" />
</class>
</hibernate-mapping>
Now whenever I remove some roles from an account and then call SaveOrUpdate, these roles DO NOT get removed from the database. What am I doing wrong? Please help.