2010-01-19 4 views
3

Je n'ai aucun contrôle sur le schéma db et ai besoin de mapper deux colonnes de base de données à une seule propriété dans ma classe .Net. Le moteur db est DB2Mappage d'une propriété à une expression SQL ou plusieurs colonnes dans Fluent nHibernate

La base de données comporte des colonnes AUTH_DT de type DATE et AUTH_TM de type TIME. Le code pertinent suit:

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

Comment puis-je dire à la classe-carte pour combiner les colonnes date et l'heure de la db?

Répondre

2

Il existe une méthode appelée "Formule". Cette méthode prend une instruction sql qui sera mappée à la propriété. Il sera écrit comme une sous-requête dans l'instruction sql. Utilisé quelque chose comme ceci:

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

Cool. On dirait juste ce dont j'ai besoin. J'ai juste besoin de travailler sur la syntaxe pour ma combinaison de date et d'heure maintenant. – grenade

Questions connexes