我有一个实体:

public class Message:Entity
    { 
       public virtual IList`<`Message> ReplayMessages { set; get; }
       public virtual Message ParentMessage { set; get; }
    }

I try to override the mapping:
 mapping.HasMany(x => x.ReplayMessages)
                .AsSet()
                .KeyColumnNames.Add("ParentId");

但在hbm.xml文件中我得到:

<set name="ReplayMessages">
      <key column="MessageFk" />
      <one-to-many class="Edi.Core.Model.Message, Edi.Core, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" />
    </set>

为什么列键名并未改变?

有帮助吗?

解决方案

当我使用的hasMany它看起来像这样:

HasMany(x => x.OrderItems)
    .KeyColumn("OrderId")
    .AsSet()
    .Cascade.All();

我不知道是什么KeyColumnNames用于...

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top