Linq方法用于创建一系列单独的对象?

时间:2012-03-27 08:44:08

标签: c# linq

我必须在这里重新发明轮子 - 但我已经搜索过,我找不到任何相同的东西......

这是我的代码,用于创建具有默认构造函数的零个或多个对象的序列:

public static IEnumerable<T> CreateSequence<T>(int n) where T: new()
{
    for (int i = 0; i < n; ++i)
    {
        yield return new T();
    }
}

我的问题很简单:我应该使用Linq等效的吗?

2 个答案:

答案 0 :(得分:8)

试试这个:

Enumerable.Range(1,count).Select(_ => new T());

Enumerable.Range将为您提供指定范围内的当前数字作为参数,但您可以忽略它(在示例中命名为_)。

答案 1 :(得分:0)

是的,有:var items = Enumerable.Repeat(new YourClass(), 10);