这是一个新手问题:我需要这两个类来获取特定列表。
public class Customer
{
public string firstname { get; set; }
public string lastname { get; set; }
ObservableCollection<Address> { get; set; }
}
public class Address
{
public string Street { get; set; }
public string City { get; set; }
}
我有这个测试数据:
Joe,Doe,123 Main St,纽约市
Jane,Doe,456 Main St,纽约市
唐纳德,Tramp,1600宾夕法尼亚大道,华盛顿特区
Spongebob,Squarepants,124 Conch Street,Bikini Bottom
奥斯卡,The Grouch,Sesame Street,Anywhere City
Milo,Murphy,Unlucky Street,Swamp City
我希望能够获得名字,姓氏,街道和城市的所有细节,这个城市在哪里?#34;纽约市&#34;。
那么如何为此编写LINQ查询?
答案 0 :(得分:0)
假设您希望所有客户都拥有&#34;纽约市&#34;地址和所有地址(分层),您只需执行此操作:
var query = from c in customers
where c.addresses.Any(a => a.City == "New York City")
select c;
如果你确实想要一个扁平化的结果集,可以将表和投影连接到匿名类型:
var query = from c in customers
from a in c.addresses
where a.City == "New York City"
select new
{
c.firstname,
c.lastname,
a.City,
a.Street
};