如何通过代码等效将流畅的nHibernate动态属性映射转换为NH 3.2映射

时间:2011-11-01 09:14:15

标签: fluent-nhibernate nhibernate-mapping

我在流畅的nHibernate中有以下映射:

public CustomFieldsMap()
{
    Schema("schema");
    Table("table");

    Id(x => x.Id, m => m.Column("id"));
    DynamicComponent(x => x.Fields, c =>
    {
        ...insert code here...  
    });
}

这很好(显然是真实的代码)。

我无法解决的是nHibernate 3.2中引入的代码功能映射中的等价物(如果还有)?

2 个答案:

答案 0 :(得分:2)

您必须提供动态组件模板。

Component(x => x.Fields, new
{
    IntField = 0,
    RelationField = default(Related)
}, dc =>
{
    // dynamic component members mappings
    dc.Property(x => x.IntField);
    dc.ManyToOne(x => x.RelationField);
    // etc.
});

有关示例和解释,请参阅this article

答案 1 :(得分:0)

你能不能使用RegisterDynamicComponentMapping?