c#将列表映射到ILookup<;内部,租户>;

c#将列表映射到ILookup<;内部,租户>;,c#,linq,linq-to-entities,C#,Linq,Linq To Entities,基于以下类 public class User { public int Id { get; set; } public List<TenantUser> TenantUsers { get; set; } } public class TenantUsers { public int UserId { get; set; } public User User { get; s

基于以下类

    public class User
    {
        public int Id { get; set; }
        public List<TenantUser> TenantUsers { get; set; }
    }


    public class TenantUsers
    {
        public int UserId { get; set; }
        public User User { get; set; }
        public int TenantId { get; set; }
        public Tenant Tenant { get; set; }
    }

    public class Tenant
    {
        public int Id { get; set; }
        public string Name { get; set; }
        public List<TenantUser> TenantUsers { get; set; }
    }

上面是我走了多远。这将返回我正在查找的
ILookup()

您必须像这样从结果中选择
Tenant

var userIds = new int[] {1, 2,3,5};
var tenantUsers = new List<TenantsUsers>();

var tenants = 
tenantUsers
.Where(m => userIds.Contains(m.UserId))
.ToLookup(x => x.UserId, y => y.Tenant); 
var userIds=newint[]{1,2,3,5};
var tenantUsers=新列表();
var租户=
租户
.Where(m=>UserId.Contains(m.UserId))
.ToLookup(x=>x.UserId,y=>y.Tenant);

var userIds = new int[] {1, 2,3,5};
var tenantUsers = new List<TenantsUsers>();

var tenants = 
tenantUsers
.Where(m => userIds.Contains(m.UserId))
.ToLookup(x => x.UserId, y => y.Tenant);