我试图在Fluent NHibernate中映射manyToMany关系并遇到一个问题,这个问题很可能只是我在这个工具上的新手 .
我有2个实体,用户和项目 . 用户可以在许多项目上,项目可以有很多用户 .
在我的用户 Map 中
HasManyToMany(x => x.Projects).Inverse();
当我在项目中放置相同的 Map 时,我得到一个例外,因为表名相反 . 另外我认为我根据这篇文章不需要它:Fluent NHibernate Many-to-Many
我正在逐步查看它是否正常工作:
var user = _userRepository.FindByUserName("Josh");
var projects = user.Projects;
var user2 = projects[0].Users;
会发生什么是项目返回包含我的项目的集合 . User2虽然是null . 我希望user2成为一个包含与用户相同用户的集合 .
那么我做错了什么 . 谢谢 .
1 回答
尝试仅在一个映射上放置.Inverse() .
用户映射:
ProjectMap:
如果这不起作用,请尝试指定表名 .
用户映射:
ProjectMap: