Fluent nhibernate 创建多列唯一索引的Fluent NHibernate问题
我为实体设置了以下fluent映射:Fluent nhibernate 创建多列唯一索引的Fluent NHibernate问题,fluent-nhibernate,unique-key,Fluent Nhibernate,Unique Key,我为实体设置了以下fluent映射: *Id(x => x.Id); References(x => x.UserNominee).UniqueKey("UQ_SurveyNominee"); References(x => x.SurveyRequest).UniqueKey("UQ_SurveyNominee"); Map(x => x.NominationDate).Not.Nullable();*
*Id(x => x.Id);
References(x => x.UserNominee).UniqueKey("UQ_SurveyNominee");
References(x => x.SurveyRequest).UniqueKey("UQ_SurveyNominee");
Map(x => x.NominationDate).Not.Nullable();*
不幸的是,唯一索引只在生成的SQL Server表中的一列上创建,而不是像我预期的那样在两列上都创建。我做错了什么
问候
mjj好的,我已经设法让它工作了,但我不确定为什么它会有任何不同。我必须更改父“SurveyRequest”实体上的映射。我将映射更改为:
HasMany(x => x.SurveyAwarenessNominees)
.KeyColumn("SurveyRequest_Id")
.LazyLoad()
.Inverse()
;
到
HasMany(x=>x.surveyawarenessnomines).Cascade.All().Inverse()强>
现在已在两个外键列上正确创建了我的唯一索引。进一步调查表明,父映射中的“.KeyColumn”(“SurveyRequest_Id”)”语句是问题的根本原因。没有KeyColumn部分的原始父映射工作正常。