从实体对象中排除子记录c#

时间:2013-08-29 15:59:19

标签: frameworks linq-to-entities entity

我遇到了编写查询以从实体框架子对象中排除记录的问题。 我的查询

var response = db.USER_PROFILE.Where(x =>
            x.IPAD_SERIAL_NUMBER == id
            && x.ACTIVE_FLAG == 1
            && x.USER_BRAND.Any(y => y.ACTIVE_FLAG == 1)
            ).FirstOrDefault();

返回结果

带有

的一个USER_PROFILE对象

两个USER_BRAND对象

USER_BRAND - ACTIVE_FLAG = 1

USER_BRAND - ACTIVE_FLAG = 0

我不想在集合中返回ACTIVE_FLAG = 0的记录。 我该怎么做? 提前谢谢!

1 个答案:

答案 0 :(得分:0)

我能够这样做

var query = db.USER_PROFILE
            .Select(x=> new 
            {
                User = x,
                UserBrands = x.USER_BRAND.Where(y=> y.ACTIVE_FLAG == 1)
                    .Select(a=> new 
                    { 
                        UserBrand = a, 
                        Brand = a.BRAND
                    }),
            });

var filtered = query.Select(x=> x.User);