代码之家  ›  专栏  ›  技术社区  ›  Danko Durbić

如何在NHibernate ManyToOne代码映射中设置实体名称?

  •  0
  • Danko Durbić  · 技术社区  · 9 年前

    更新: Fixed in version 5.2.


    我正在转换一堆NHibernate .hbm.xml 映射到按代码映射。有几个 many-to-one 具有 entity-name 属性:

    <many-to-one name="Foo" column="FooId" class="Bar" entity-name="BarEntity"/>
    

    这应该转化为:

    ManyToOne( c => c.Foo, map => 
    {
         map.Column("FooId");
         map.EntityName("BarEntity"); // error
    }
    

    不幸的是,这不起作用,因为没有 EntityName 在里面 IManyToOneMapper 为什么?二者都 IManyToManyMapper IOneToManyMapper 确实有 实体名字 .

    我该如何解决这个问题?除了保留.hbm之外,还有其他解决方法吗。xml映射?

    1 回复  |  直到 5 年前
        1
  •  1
  •   Stefan Steinegger    9 年前

    我想它只是被遗忘了。我刚刚查看了4.0.2来源,没有发现任何内容。实际上并没有多少人使用实体名称,所以可能直到现在才被请求。

    我建议在 jira 。您可能希望自己实施并提供给社区。