Je suis nouvelle dans NHibernate fluent. Maintenant je fais face à un problème avec la cartographie des clés composites. Quelqu'un peut-il point de l'URL ou de l'échantillon s'il vous plaît?
Réponses
Trop de publicités?si c'est votre première classe
public class EntityMap : ClassMap<Entity>
{
public EntityMap()
{
UseCompositeId()
.WithKeyProperty(x => x.Something)
.WithReferenceProperty(x => x.SomethingElse);
}
}
voici le deuxième avec une référence à l'Entité
public class SecondEntityMap : ClassMap<SecondEntity>
{
public SecondEntityMap()
{
Id(x => x.Id);
....
References<Entity>(x => x.EntityProperty)
.WithColumns("Something", "SomethingElse")
.LazyLoad()
.Cascade.None()
.NotFound.Ignore()
.FetchType.Join();
}
}
Il y a peut être une nécessité pour les entités ayant des identifiants composés, les entités que la carte de tables qui ont les clés primaires composites, composée de plusieurs colonnes. Les colonnes qui composent cette clé primaire sont généralement les clés étrangères d'une autre les tables.
public class UserMap : ClassMap<User>
{
public UserMap()
{
Table("User");
Id(x => x.Id).Column("ID");
CompositeId()
.KeyProperty(x => x.Id, "ID")
.KeyReference(x => x.User, "USER_ID");
Map(x => x.Name).Column("NAME");
References(x => x.Company).Column("COMPANY_ID").ForeignKey("ID");
}
}
Pour plus de référence : http://www.codeproject.com/Tips/419780/NHibernate-mappings-for-Composite-Keys-with-associ