我有下一个代码:
public sealed class Gaaa
{
private readonly int _ids;
public Gaaa(int id)
{
_ids = id;
}
public static IEnumerable<Gaaa> Generate(int num)
{
return Enumerable.Range(1, num).Select(ids => new Gaaa(ids + 1));
}
}
如何在Generate函数中以不同方式表示代码?
答案 0 :(得分:1)
我假设你不喜欢点符号。这是你如何做到的:
return from id in Enumerable.Range(1, num)
select new Gaaa(id + 1);
我个人更喜欢这里的点符号,因为你要做的事情很简单 - 创建一堆具有递增范围的Gaaa
s。我认为在这种特殊情况下使用点符号更具可读性。
我认为查询符号更适合用于涉及集合和更复杂操作的情况,如下所示:
from item in aCollection
where item.Property2 > 10
orderby item.Property1
select item.Property3
此外,在进行连接时,查询表示法更具可读性。