流畅的NHibernate类型的多种约定

时间:2009-02-13 15:42:36

标签: fluent-nhibernate

我使用Fluent NHIbernate中的AutoPersistenceModel来映射我的所有实体,并且一切正常:D

但是,我的几个对象都有

public virtual IList<Comment> Comments { get; set; }

在数据库中有一个注释表,每个具有上述代码的实体都有自己的注释链接表。

目前我正在做的是:

public class ContractMappingOverride : IAutoMappingOverride<Contract>
{
    public void Override(AutoMap<Contract> mapping)
    {
        mapping.HasManyToMany(x => x.Comments)
            .WithTableName("Comment_Contract");
每个实体

是否有某种方法可以设置一个约定,其中所有映射都通过IList&lt; Comment&gt;使用上面的表名约定自动连接多少?

由于

安德鲁

2 个答案:

答案 0 :(得分:5)

我知道这不是你想听到的,但答案是肯定的。

在Fluent NHibernate的当前设计中,没有办法将集合应用于集合,同时了解它们所使用的类型,您可以将所有集合应用于所有集合,而不是取决于它们所包含的类型。这是我们设计中的一个缺陷,我的目标是纠正这个问题,但这是一个很大的变化,所以它不会在一夜之间发生。

我建议您使用我们的mailing list办理登机手续,我们通常会在那里发布更新。

抱歉,我无能为力。

答案 1 :(得分:0)

我已经和Fluent NHibernate一起工作已经有一段时间了,我现在正在回归它(自09年初开始以来有很多变化!)我认为现在问题的答案是肯定的您可以使用OverideAll功能执行此操作。

在FNH维基上查看Overrides