【问题标题】:NHibernate 3.2 | Trigger Sequence Identity for Oracle | Loquacious configNHibernate 3.2 | Oracle 的触发序列标识 |啰嗦的配置
【发布时间】:2011-12-06 03:10:51
【问题描述】:

有谁知道在 Oracle 数据库上使用 NHibernate 3.2 的冗长配置是否支持触发器序列 id 场景。

我已经尝试将序列和本机作为我的 id 的生成器。但它不支持我的 id 由 Oracle 上的 before 触发器生成的场景。

使用这 2 个生成器,NHibernate 尝试通过调用“Select Sequence.Next From Dual”来推送 ID。

谢谢 菲尔

【问题讨论】:

  • 老实说,NH 的内置配置内容非常糟糕。如果你只能处理 NH 3.1,你最好看看 Fluent NH(现在是我的理解..)

标签: oracle nhibernate


【解决方案1】:

您只需要实现IGeneratorDef。比如:

public class TriggerIdentityGeneratorDef : IGeneratorDef
{
    public string Class
    {
        get { return "trigger-identity"; }
    }

    public object Params
    {
        get { return null; }
    }

    public Type DefaultReturnType
    {
        get { return typeof (int); }
    }

    public bool SupportedAsCollectionElementId
    {
        get { return true; }
    }
}

【讨论】:

  • 你拯救了这一天!
猜你喜欢
  • 2014-10-30
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-03-04
  • 1970-01-01
  • 2012-11-05
  • 1970-01-01
  • 2014-10-28
相关资源
最近更新 更多