首页 新闻 搜索 专区 学院

EF关系映射如何实现单向的多对多配置

0
悬赏园豆:20 [已关闭问题] 关闭于 2014-03-06 15:41

比如有User和Role两个表,然后又一个中间表UserRole,表机构就不用说了把,地球人都懂的,user和role是多对多关系,正常EF映射的时候会在user类里面新增一个role的机会,而且还会在role类里面新增一个user的集合,然后通过如下代码进行映射:

 

modelBuilder.Entity<User>()
.HasMany(b 
=> b.Roles)
.WithMany(c 
=> c.Users)
.Map
(
=>
{
m.MapLeftKey(
"UserID");
m.MapRightKey(
"RoleID");
m.ToTable(
"UserRole");

);

现在问题是,我不想在Role实体类里面新增Users集合,那么上面的配置就无法实现了,也就是说我只要User去访问Role不要反过来的,这个应该怎么配置啊,求大神解答了

我的想法是:1、role实体里面的Users集合保留,但是设置为internal;

                 2、把UserRole也映射到实体,设置类为internal,

                     然后分别设置user与userrole 一对多和role和userrole一对多类解决;

lawbc的主页 lawbc | 初学一级 | 园豆:63
提问于:2014-03-04 16:44
< >
分享
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册