Mam problem w Fluent NHibernate przykład przy użyciu relacji wiele do wielu. Próbowałem znaleźć przykłady na podobnej sprawie i znalazłem tony, ale wciąż mam ten sam problem.Fluent NHibernate HasManyToMany() Mapping
Przy pracy projektu badania następujące jest wyjątek:
NHibernate.PropertyAccessException Wyjątek: nastąpiło pochłaniacza project.Entities.User.UserName ---> System.Reflection.TargetException: obiekt nie dopasowanie typ celu.
To jest obraz z tabel:
a kod
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();
}
Oto kod, większość przykładów w sieci i na stronie odwzorowań Fluent NHibernate są zapisywane w w ten sam sposób, więc wszelkie pomysły?
btw, im przy użyciu wersji Fluent 1.0, więc .WithTableName() to zamiast tego Table(), mimo to próbowałem użyć go bez lazyload i innych defekacji, ale wciąż ten sam wyjątek: S – Saeedouv
Czy na pewno trzeba być zmapowany z obu stron? – UpTheCreek
Dla mojej sytuacji nie chcę wiązać dwukierunkowo. Mam firmę, osobę i adres, a każda firma lub każda osoba może mieć więcej niż jeden adres. W tej sytuacji co powinienem zrobić? – uzay95