代码之家  ›  专栏  ›  技术社区  ›  grenade

将属性映射到fluent nhibernate中的sql表达式或多列

  •  3
  • grenade  · 技术社区  · 16 年前

    我无法控制DB模式,需要将两个数据库列映射到.NET类中的单个属性。数据库引擎是DB2

    数据库有列 AUTH_DT 类型 DATE AUTH_TM 类型 TIME . 相关代码如下:

    public class Authorisation{
        ...
        public virtual DateTime TransactionDate { get; set; }
        ...
    }
    public class AuthorisationMap : ClassMap<Authorisation>{
        ...
        Map(x => x.TransactionDate); //.Column("AUTH_DT" + "AUTH_TM");
        ...
    }
    

    如何告诉类映射组合来自数据库的日期和时间列?

    1 回复  |  直到 16 年前
        1
  •  2
  •   Mattias Jakobsson    16 年前

    有一种叫做“公式”的方法。此方法采用将映射到属性的SQL语句。它将作为SQL语句中的子查询写入。用了这样的东西:

    Map(x => x.TransactionDate).Formula("[[sql statement]]");