在数据库中已经存在的表上,我们尝试为CreationDate添加一列

mapping.Map(x => x.CreationDate)
            .Not.Nullable()
            .Default("to_date('01-01-0001','dd-MM-yyyy')")

这在oracle上运行良好,但SQLite无法理解,这是很正常的,因为它不知道to_date()函数。

如果我用

DateTime.MinValue.ToString()

带有或不带有特定格式的默认值。 然后它将在SQLite中工作,但在Oracle中将不工作。

有人知道解决方案吗?

#1楼 票数:1 已采纳

省略默认值并编写约定

class CreationDateConvention  : IPropertyConvention
{
    public CreationDateConvention(string default)
    {
        _default = default;
    }

    public void Apply(... instance)
    {
        if (instance.Name == "CreationDate")
            instance.Default(_default)
    }
}


// and while configuring
...FluentMappings.AddFromAssemblyOf<>().Conventions.Add(new CreationDateConvention(isOracle ? "to_date..." : Datetime.Minvalue.ToString())

  ask by Jordy van Eijk translate from so

未解决问题?本站智能推荐:

1回复

流利的Nhibernate和SQLite映射组件

我在实体上有一个组件,可能为null。 这适用于InMemory数据库的单元测试,但不适用于基于文件的SQLite数据库。 我使用布尔值标志来指示是否设置了组件,但这似乎是一个hack。 这是NHibernate还是SQLite错误? 还是我错过了什么? 这是我失去业务价值的映
1回复

问题流利Nhibernate将MySQL时间(6)映射到C#DateTime

我有一个MySql表与以下架构 流利的模型: 和映射: 我正在使用以下代码测试ORM 和 但我一直在内心异常 我试着通过改变时间映射来解决这个问题 Map(x => x.Time).Column(“tsTime”)。CustomSql
1回复

流利的nHibernate将HasMany映射到没有主键的实体/表

我在尝试建立HasMany关系到没有主键的表支持的实体时遇到了最大的麻烦。 ClassA具有CompositeId 。 为了规避缺乏的primary key上ClassB ,我试图创建一个CompositeId上ClassB这是由表中的所有列。 无论我尝试了什么,都没有任何效果。
1回复

如何在流利的NHibernate中将实体映射到EntityCollection字典

我有此类(从中删除了多余的信息之后): 这些是我的映射(在再次删除冗余信息之后): 我的映射出了点问题,很容易看到我要完成的工作(ebay将是这种逻​​辑的一个很好的例子-类别中的产品具有变化的属性和可能的​​值作为过滤依据)。 这是我得到的表(不好): 为什么“Cat
1回复

流利的NHibernate多对多映射(3类)

首先,我使用NHibernate 3.2和FluentNHibernate 1.3。 我有3个方面: 我用以下代码映射它们: 每个类都有其他2个类的集合,不要问为什么,但是我需要将此映射到数据库。 Nhibernate生成3个表,其中2个表包含2个字段,而第三个表则包含来自所
1回复

如何阻止NHibernate在不创建方言的情况下将“this_。”添加到查询中

我正在使用Fluent NHibernate来查询我的Oracle 11g数据库。 在流畅的映射文件中,我有一个看起来像这样的映射 但是,当我运行我的测试时,我得到了 由于SQL转换中的其他字符串(this_。): 我已经提到过如何阻止NHibernate(通过Acti
1回复

流利的nhibernate映射多个表

我有一个UserEntity,映射像和得到不能同时获取多个行李。 错误 我想在创建使用者查询时获取地址和角色。 我该怎么做才能看到类似的输出
1回复

流利的Nhibernate:如何映射双向关系

我正在尝试映射以下内容,但不确定当前的nHibernate /流畅的nHibernate是否完全可行,因此任何建议将不胜感激。 基本上我有以下两节课 有没有办法有效地映射上述关系? 我的Venue表具有CurrentVenueDetails属性的VenueDetail的外键,与此