NHibernate Fluent HasManyToMany() Cartographie
Je vais avoir un problème dans NHibernate Fluent exemple en utilisant Plusieurs-à-Plusieurs liens. J'ai essayé de trouver des exemples sur un cas similaire, et j'ai trouvé des tonnes, mais je suis toujours le même problème.
Lors de l'exécution du projet de test, l'exception suivante est générée:
NHibernate.PropertyAccessException: une Exception s'est produite getter de projet.Les entités.De l'utilisateur.Nom d'utilisateur ---> Système.De la réflexion.TargetException: l'Objet n'a pas
match le type de cible.
C'est une image de la tables:
et le code
public UsersMap()
{
this.Table("Users");
Id(x => x.UserName).Column("Username").GeneratedBy.Assigned();
Map(x => x.FirstName);
Map(x => x.LastName);
Map(x => x.Password);
Map(x =>x.EMail);
Map(x => x.Title);
Map(x => x.Division);
HasManyToMany<User>(x => x.Roles)
.Table("UserInRoles").ParentKeyColumn("Username")
.ChildKeyColumn("Usernamepk")
.Cascade.SaveUpdate().LazyLoad();
}
public RolesMap()
{
this.Table("Roles");
Id(x => x.ID).GeneratedBy.Assigned().Column("ID");
Map(x => x.RoleName).Length(50);
HasManyToMany<User>(x => x.Users)
.Table("UserInRoles").ParentKeyColumn("ID")
.ChildKeyColumn("RoleIdpk").Cascade.SaveUpdate().LazyLoad();
}
voici le code, la plupart des exemples sur le web et la fluidité de la Nhibernate page mappages sont écrits de la même manière, de sorte que toutes les idées ?
OriginalL'auteur Saeedouv | 2009-08-24
Vous devez vous connecter pour publier un commentaire.
Concernant pour le code j'utilise dans mon projet, je voudrais définir vos relations manyTomany de cette façon:
Ces définitions a fonctionne pour moi.
Cochez cette première puis décorer avec LazyLoading et d'autres propriétés.
Êtes-vous sûr qu'il doit être mappé les deux côtés?
Pour ma situation, je ne veux pas lier les deux. J'ai de la compagnie, la personne et son adresse, et toute entreprise ou personne peut avoir plus d'1 adresse. Dans cette situation, que dois-je faire?
Je ne pense pas que vous devez mapper les deux côtés.
OriginalL'auteur twk