我有一个LINQ查询返回一些像这样的对象......
var query = from c in db.Customers
where ...
select c;
然后我这样做
List<String> list = new List<String>();
foreach (ProgramLanguage c in query)
{
//GetUL returns a String
list.Add(GetUL(c.Property,c.Property2));
}
有没有办法合并到这个列表?
var query = from c in db.Customers
where ...
select new
{
GetUL(c.Property,c.Property2)
}).ToList<String>();
答案 0 :(得分:3)
此查询应该一举完成这两个步骤。
var list = db.Customers.Where(c => ...).
Select(c => GetUL(c.Property,c.Property2)).ToList()
*注意,我比其他版本更喜欢这种LINQ语法。
答案 1 :(得分:2)
var query = db.Customers.Where(c => ...)
.Select(c => GetUL(c.Property, c.Property2))
.ToList();
或在查询语法中,如果您愿意
var query = (from c in db.Customers
where ...
select GetUL(c.Property, c.Property2)).ToList();
答案 2 :(得分:0)
var slist = (from c in db.Customers
where ...
select new
{
GetUL(c.Property,c.Property2)
}).ToList();
此外,如果您还没有我强烈建议您下载并使用LinqPad。它是一个杀手级的小应用程序,可以让你试验linq查询(以及更多!)