在Fluent NHibernate中,如何映射组件列表?

vik*_*yak 2 nhibernate nhibernate-mapping fluent-nhibernate

如何在Nhibernate中流畅地映射组件列表?

  public class Registration : Entity
{
        public virtual IList<InsuranceInformation> InsuranceInformation { get; set; }
     }

public class InsuranceInformation
{
    public virtual Person Insured { get; set; }
    public virtual string PolicyNumber { get; set; }
    public virtual string InsuranceCompanyId { get; set; }
    public virtual string InsuranceCompanyName { get; set; }
    public virtual string PlanType { get; set; }
    public virtual string GroupNumber { get; set; }
    public virtual FamilyRelationships InsuredRelationshipToPatient { get; set; }
 }
Run Code Online (Sandbox Code Playgroud)

注册是实体,保险信息/人是组件.

如果我改变InsuranceInformation是一个实体,我可以FluentNH Automapper容易映射.但是当我将InsuranceInformation更改为Component时,它会抛出一个映射异常.

Eri*_*ock 5

具有复合元素映射的流畅NHibernate IDictionary显示了映射组件字典的示例:

HasMany<CategoryResource>(x => x._resources)
.AsMap<string>("LangCode")
.KeyColumn("EntityID")
.Table("CategoryResources")
.Component(x =>
    {
        x.Map(c => c.Name);
        x.Map(c => c.Description);
    })
.Cascade.All();
Run Code Online (Sandbox Code Playgroud)

希望这会指出你正确的方向.