按照NHibernate 3.3的约定映射组件

按照NHibernate 3.3的约定映射组件,nhibernate,components,nhibernate-mapping,Nhibernate,Components,Nhibernate Mapping,我正在尝试将类型为FormFieldType的组件映射到类型为FormField的属性 我在db中有两个表:FormField和FormFieldType mapper.Class<FormField>(map=>map.Component<FormFieldType>(p=>p.FormFieldType, cm=> { cm.Property(x => x.FormFieldTypeName, m =>

我正在尝试将类型为FormFieldType的组件映射到类型为FormField的属性

我在db中有两个表:FormField和FormFieldType

mapper.Class<FormField>(map=>map.Component<FormFieldType>(p=>p.FormFieldType, 
   cm=>
      {
       cm.Property(x => x.FormFieldTypeName, m => m.Column("FORM_FIELD_TYPE_NAME"));
       cm.Property(x => x.FieldType, m => m.Column("FIELD_TYPE"));
       cm.Property(x => x.Regex, m => m.Column("REGEX"));
      }));
mapper.Class(map=>map.Component(p=>p.FormFieldType,
厘米=>
{
属性(x=>x.FormFieldTypeName,m=>m.Column(“FORM\u FIELD\u TYPE\u NAME”);
属性(x=>x.FieldType,m=>m.Column(“FIELD_TYPE”);
cm.Property(x=>x.Regex,m=>m.Column(“Regex”));
}));
当我试图查询FormField表时,它会显示以下列:FORM\u FIELD\u TYPE\u NAME、FIELD\u TYPE、REGEX 不存在。 这是因为nhibernate认为它们是FormField表的一部分。但它们在FormFieldType表中。 如何正确地映射这一点?
请帮助。

根据我在nhusers委员会上的回答。您希望对2个实体使用ManyToOne,而不是将其映射为组件。组件用于将多个域对象映射到单个表