Ограничение поиска в БД

Хотелось бы задавать дополнительные параметры для запроса к БД, и делать это именно одним запросом. Пример:

public class User
{
    public string Id { get; set; }

    public List<Order> Orders { get; set; }
}

public class Order
{
    public string Id { get; set; }
    public bool Paid { get; set; }
}

public async Task SomeMethod(string userId)
{
    User user = ApplicationDbContext.Users
        .Include(u => u.Orders) 
        // Хотелось бы здесь выставить условие наподобие
        // .Where(o => o.Paid)
    .FirstOrDefault(u => u.Id == userId);

    // Дальнейшая логика
}

Можно ли такое реализовать? Или обязательно придётся разбивать на 2 запроса: 1 для нахождения User, а второй для нахождения его "отфильтрованных" Ordes?


Ответы (0 шт):