nHibernate에 상당히 익숙하지 않습니다. 두 개의 테이블 "User"와 "UserProfile"사이에 다음 일대일 매핑을 설정했습니다."주어진 키가 사전에 존재하지 않습니다."nHibernate C#
User.hbm.xml :
<?xml version="1.0" encoding="utf-8" ?>
<hibernate-mapping xmlns="urn:nhibernate-mapping-2.2" namespace="Core.Domain.Model" assembly="Core">
<class name="User" table="Users" dynamic-update="true" lazy="false">
<cache usage="read-write"/>
<id name="UserId" column="UserId" type="guid">
</id>
<one-to-one name="UserProfile" class="UserProfile"/>
</class>
</hibernate-mapping>
UserProfile.hbm.xml :
<?xml version="1.0" encoding="utf-8" ?>
<hibernate-mapping xmlns="urn:nhibernate-mapping-2.2" namespace="Core.Domain.Model" assembly="Core">
<class name="UserProfile" table="UserProfiles" dynamic-update="true" lazy="false">
<cache usage="read-write"/>
<id name="UserProfileId" column="UserProfileId" type="int">
<generator class="native"/>
</id>
<property name="Description" length="100"/>
<many-to-one name="User" unique="true" column="UserId"/>
</class>
</hibernate-mapping>
내 포항 강판 위의 매핑은을 위해 : 이제
public class User
{
public virtual Guid UserId { get; set; }
public virtual UserProfile UserProfile { get; set; }
}
public class UserProfile
{
public virtual int UserProfileId { get; set; }
public virtual User User { get; set; }
}
내가하려고 할 때 내 "사용자"개체 유지 예외가 발생했습니다 : "주어진 키가 없습니다. 다음 줄에 사전 "에서 :
using (ISession session = SessionFactory.OpenSession())
사람이 여기에 갈 수 있는지 알고 있나요?
생각하기에 전에이 오류를 보았습니다. 앱을 다시 빌드하고 다시 실행 해보세요. 던져진 첫 번째 예외가 무엇인지 확인하십시오. – jjnguy
복용량이 지속되는 코드로 표시 할 수 있습니까? –
그냥 했어요. 같은 예외가 throw됩니다. – kartikq