これまでのところ、関連付けは正常に機能します (存在する場合、クラスは適切なインスタンスをUser
ロードします) が、新しい を作成し、そのプロパティを の新しいインスタンスに設定すると、オブジェクトは保存されません。UserRoles
User
Roles
UserRoles
UserRoles
これが私の要約 User.hbm.xml です。
<?xml version="1.0" encoding="utf-8" ?>
<hibernate-mapping xmlns="urn:nhibernate-mapping-2.2">
<class name="DistrictObservations.User, DistrictObservations" table="users">
<cache usage="read-write" region="all" />
<id name="ID" column="id" type="int" unsaved-value="0">
<generator class="identity" />
</id>
<!-- snip -->
<one-to-one name="Roles" class="DistrictObservations.UserRoles, DistrictObservations" lazy="false" />
</class>
</hibernate-mapping>
UserRoles のマッピングは次のとおりです。
<?xml version="1.0" encoding="utf-8" ?>
<hibernate-mapping xmlns="urn:nhibernate-mapping-2.2">
<class name="DistrictObservations.UserRoles, DistrictObservations" table="user_roles">
<cache usage="read-write" region="all" />
<id name="UserID" column="user_id" type="int" >
<generator class="foreign">
<param name="property">User</param>
</generator>
</id>
<!-- snip -->
<one-to-one name="User" class="DistrictObservations.User, DistrictObservations" lazy="false" constrained="true" foreign-key="FK_user_roles_users" />
</class>
</hibernate-mapping>
UserRoles オブジェクトを User.ID を主キーとして保存する方法を知っている人はいますか? 私はドキュメントを見てきましたが、正直なところ、特に役に立ちません。