Для поиска компаний и их сотрудников, которые работают:
var companies = from c in Companies
select new
{
Company = c,
EmployedPersons = c.Employees.Where(e => e.Employed)
};
Используется так:
foreach (var company in companies)
{
Console.WriteLine("{0}", company.Company);
foreach (var employee in company.EmployedPersons)
{
Console.WriteLine("{0}", employee);
}
}
Другой подход, основанный на вашем комментарии, который вам нужно отфильтровать в другом месте:
public void DisplayEmployedPersons(Company company)
{
foreach (var employee in company.Employees.Where(e => e.Employed))
{
Console.WriteLine("{0}", employee);
}
}
Наконец, вы можете изменить частичный класс, сгенерированный для вашего Customer
объекта данных:
public partial class Customer
{
public IEnumerable<Employee> CurrentEmployees
{
get { return this.Employees.Where(e => e.Employed);
}
}