using System.Collections;
using System.Collections.Generic;
public static void Main()
var userIds = new int[] {1, 2,3,5};
var tenantUsers = new List<TenantUser> { new TenantUser { UserId = 1, User = new User {Id = 1}, TenantId = 1, Tenant = new Tenant { Id = 1}} };
var tenants = tenantUsers
.Where(m => userIds.Contains(m.UserId))
.ToLookup(x=>x.UserId, y=>y.Tenant);
IEnumerable<Tenant> tenantList = tenants[1];
foreach(var t in tenantList)
public int Id { get; set; }
public List<TenantUser> TenantUsers { get; set; }
public int UserId { get; set; }
public User User { get; set; }
public int TenantId { get; set; }
public Tenant Tenant { get; set; }
public int Id { get; set; }
public string Name { get; set; }
public List<TenantUser> TenantUsers { get; set; }