using System.Collections.Generic;
public static void Main()
var ivan = new User() { Id = 1, Name = "Ivan" };
var vasya = new User() { Id = 2, Name = "Vasya" };
var book1 = new Book() { Id = 1, Name = "1" };
var book2 = new Book() { Id = 2, Name = "2" };
var book3 = new Book() { Id = 3, Name = "3" };
var book4 = new Book() { Id = 4, Name = "4" };
var booksRepository = new List<Book>();
booksRepository.Add(book1);
booksRepository.Add(book2);
booksRepository.Add(book3);
booksRepository.Add(book4);
var result = booksRepository.Where(b => b.Users.Any(u => u.Name == "Ivan")).ToList();
foreach (Book book in result)
Console.WriteLine(book.Name);
public long Id {get;set;}
public string Name {get;set;}
public long Id {get;set;}
public string Name {get;set;}
public List<User> Users {get;set;}
Users = new List<User>();