NHibernate保存对象
我有一个profile对象,它链接到一个details对象(1到1)。因此,在我的profile对象上,我将detail对象作为属性,并尝试使用HasOne映射来映射details对象。保存概要文件时,它在数据库中创建概要文件条目和详细信息条目;但是,详细信息对象上的profileId为Guid.Empty。未使用在配置文件上生成的Id保存详细信息: 有什么想法吗??提前谢谢 以下是我的地图:NHibernate保存对象,nhibernate,c#-4.0,fluent-nhibernate,Nhibernate,C# 4.0,Fluent Nhibernate,我有一个profile对象,它链接到一个details对象(1到1)。因此,在我的profile对象上,我将detail对象作为属性,并尝试使用HasOne映射来映射details对象。保存概要文件时,它在数据库中创建概要文件条目和详细信息条目;但是,详细信息对象上的profileId为Guid.Empty。未使用在配置文件上生成的Id保存详细信息: 有什么想法吗??提前谢谢 以下是我的地图: public ProfileMap() : base(ESchema.Usr, ETable.Prof
public ProfileMap() : base(ESchema.Usr, ETable.Profile)
{
Id(x => x.Id).GeneratedBy.GuidComb();
Map(x => x.MembershipId);
Map(x => x.FirstName);
Map(x => x.LastName);
Map(x => x.Gender).CustomType<EGender>();
Map(x => x.BirthDate);
Map(x => x.IsActive);
HasOne(x => x.Details).PropertyRef(x => x.ProfileId).Cascade.All();
//References(x => x.ProfileImage).Column("ProfileId");
}
public DetailMap() : base(ESchema.Usr, ETable.Detail)
{
Id(x => x.Id).GeneratedBy.GuidComb();
Map(x => x.ProfileId);
Map(x => x.Height);
Map(x => x.Weight);
}
public ProfileMap():base(ESchema.Usr,ETable.Profile)
{
Id(x=>x.Id).GeneratedBy.GuidComb();
Map(x=>x.MembershipId);
Map(x=>x.FirstName);
Map(x=>x.LastName);
Map(x=>x.Gender).CustomType();
Map(x=>x.出生日期);
Map(x=>x.IsActive);
HasOne(x=>x.Details).PropertyRef(x=>x.ProfileId).Cascade.All();
//引用(x=>x.ProfileImage).Column(“ProfileId”);
}
public DetailMap():base(ESchema.Usr,ETable.Detail)
{
Id(x=>x.Id).GeneratedBy.GuidComb();
Map(x=>x.ProfileId);
地图(x=>x.Height);
Map(x=>x.Weight);
}
NHibernate reference()中关于一对一的部分似乎建议(接近结尾)Detail.ProfileId应该是OwningProfile(键入为Profile),并使用References()进行映射(在fluent NH中)