首页 新闻 会员 周边

ef升级到6.1后,left outer join 变成 inner join 怎么办?

0
悬赏园豆:15 [已关闭问题] 关闭于 2015-01-31 15:53

之前4.1 ,杠杠的,升级成6.1 left outer 失效,用的sql server profiler跟踪,变成inner join


public class CorpMember
{
public int? CMCID { get; set; }

public virtual CorpMemberCategory category{ get; set; }
}


Dbcontext:

modelBuilder.Entity<CorpMemberCategory>().HasMany(a => a.corpmembers).WithRequired(p => p.category);
            modelBuilder.Entity<CorpMember>().HasRequired(a => a.category).WithMany().HasForeignKey(a => a.CMCID);

使用可为空的外键即可实现left 效果,升级成6.1 直接变成inner join 

有没哪位大侠遇到过,怎么解决的啊?

4.1没问题,

from e in mySet.Where(specification.SatisfiedBy())
                           join cate in base.DataContext.CorpMemberCategory on e.CMCID equals cate.CMCID into catelist
                           from cc in catelist.DefaultIfEmpty()
或 直接用导航属性
from e in mySet.Where(specification.SatisfiedBy())
  select new { e.Address,  e.category.CateName
都没问题


6.1就出问题了,该怎么设置呢?

谢谢

軒轅劍的主页 軒轅劍 | 初学一级 | 园豆:64
提问于:2015-01-28 16:45
< >
分享
所有回答(1)
0

http://entityframework.codeplex.com/workitem/2656

軒轅劍 | 园豆:64 (初学一级) | 2015-01-31 15:53
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册