public class Address
{
public string Street { get; set; }
public string City { get; set; }
public string Region { get; set; }
public string Postal { get; set; }
public AddressType Location { get; set; }
}
public class Person
{
public string Name { get; set; }
public string ID { get; set; }
public string Title { get; set; }
public List<Address> Addresses { get; set; }
}
....
IEnumerable<Address> results = from guy in allPersons
from addressResult in guy.Addresses
where addressResult City == "London"
select addressResult;