C# 使用linq调用方法x次

C# 使用linq调用方法x次,c#,linq,C#,Linq,我想使用LINQ调用一个方法3次,该方法返回一个对象,我想用该对象将其添加到列表中,我该如何做 List<News> lstNews = new List<News>(); lstNews.Add(CollectNews) [x 3 times] <-- Using Linq private static News CollectNews(){ ... } List lstNews=新列表(); lstNews.Add(CollectNews)[x3次]

我想使用LINQ调用一个方法3次,该方法返回一个对象,我想用该对象将其添加到列表中,我该如何做

List<News> lstNews = new List<News>();

lstNews.Add(CollectNews) [x 3 times] <-- Using Linq 

private static News CollectNews(){
...
}


List lstNews=新列表();
lstNews.Add(CollectNews)[x3次]
var lstNews=Enumerable.Repeat(0,3)。选择(=>CollectNews()).ToList();

您可以
System.Linq.Enumerable
多次重复操作

                Enumerable.Repeat<Action>(() =>
            {
                lstNews.Add(CollectNews);
            }, 3);

可枚举。重复,据我所知,您希望最后得到三个
新闻
对象的列表。你可以这样做

Enumerable.Repeat(1, 3).Select(_ => CollectNews()).ToList();
在该示例中,可以使用任何值代替
1


虽然这种方法有效,但它有点滥用LINQ的概念。特别是,您不应该假定执行
CollectNews()
调用的任何顺序。虽然标准的
Select
实现将按顺序执行,但这可能并不总是正确的

为什么要使用Linq?可能你把Linq和Lambda表达式搞混了?