在C#中,由於下面的代碼:C#轉換LINQ VAR結果實際類型
public class Person
{
public int PersonID { get; set; }
public int Age { get; set; }
public string Name { get; set; }
}
和
List<Person> people = new List<Person>();
for (int i = 0; i != 15; i++)
{
Person p = new Person();
p.PersonID = i;
p.Age = i * 12;
p.Name = "Name " + i;
people.Add(p);
}
var sortedPeople = from qPeople in people
where qPeople.Age > 0 && qPeople.Age < 25 || qPeople.Age > 100
orderby qPeople.Age descending
select qPeople;
我可以加載sortedPeople的結果返回到一個列表<人>無循環?
謝謝。
請使用for(int i = 0; i <15; i ++)'來代替'for(int i = 0; i!= 15; i ++)' - 一些有趣而神祕的無限循環可以如果在塊內修改了'i',則出現 – 2010-04-14 03:31:41
如果您不明白var是編譯器推斷的類型聲明,那麼您不應該使用var。 – 2010-04-14 03:33:34
@James Kolpack:無限循環至少很容易發現。如果你使用'i <15'並且發現這可能會更困難一點,那麼我猜想會出現一些神祕的意外行爲(重點是 - 修改塊內的「i」無論如何都是通向地獄的道路)。 – 2010-04-14 03:46:34