LINQ查询的问题
这是一部分示例代码
- C# code
var query = from c in Costomers where c.coutry = = "Italy" select c.companyName;foreach(string name in query){ Console.WriteLine(name);}
问题是:这个query是什么,存储的是什么内容——存储的是查询结果吗?他的类型是什么?
query是数组吗?
请大神帮忙详细解释下,谢谢!
[解决办法]
LINQ的底层是IEnumerable.所以这个query也是。
[解决办法]
满足你条件的Costomers
,等于筛选后的Costomers
[解决办法]
如果Costomers(Customers)是IQueryable<Customer>,也就是LINQ to SQL,那么查询出来的是IQueryable<string>,如果Customers是List<Customer>或者Customer[]或者别的对象,也就是LINQ To Object,那么query是IEnumerable<string>。
你可以加上
Console.WriteLine(query.GetType());
看看输出什么类型。