Fluent Nhibernate - 生成非主键序列生成的值

时间:2010-09-30 20:57:08

标签: nhibernate fluent-nhibernate

我的实体映射与此非常相似。

public class MyClassMap : ClassMap<MyClass>
{
    public MyClassMap()
    {
        Id(x => x.Id);
        Map(x => x.Code);

        Map(x => x.Name);
        Map(x => x.Description);
    }
}

我想知道是否有任何可能的方法让序列自动生成代码字段(不是主键的一部分)。有一个GeneratedBy属性,但它只是一个IdentityPart类成员。

2 个答案:

答案 0 :(得分:1)

我没有看到使用Listener如何更容易使用内置方法为非ID列使用序列生成器。

但是,如果唯一的解决方案是挂钩OnPreInsert,直接查询DB&amp;调用序列并获取其值,然后我想我将不得不忍受它。

这是你解决这个问题的方法吗,Mauro?

修改 将问题发布在nHibernate&amp; FluentNHibernate谷歌群组: https://groups.google.com/group/nhusers/browse_thread/thread/35d37b9abf3566f0
https://groups.google.com/group/fluent-nhibernate/browse_thread/thread/35d37b9abf3566f0

答案 1 :(得分:0)

您需要使用SaveOrUpdateEventListeners。请参阅here以查看Jake关于如何使其适用于Fluent的回复。