我正在从本地项目中的json文件中读取结果。它返回4000多个结果。我想从该结果中仅获取随机数的结果(500-1000之间)。

 var finalResultz = finalResults("All","All","All");//step one


在这里它会返回4000多个结果。然后我将其放入这样的列表中。

List<Results> searchOne = new List<Results>();//step two
            foreach(var itms in finalResultz)
            {
                searchOne.Add(new Results
                {
                    resultDestination = returnRegionName(itms.areaDestination),
                    mainImageurl = itms.testingImageUrl
                });
            }


            ViewBag.requested = searchOne;


但是我只想得到我说的结果。我想在第一步或第二步中调整计数的大小。我该怎么做。希望得到您的帮助。

最佳答案

您可以使用Random类和Take()方法提取N个元素。

// create new instance of random class
Random rnd = new Random();

// get number of elements that will be retrieved from 500 to 1000
var elementsCount = rnd.Next(500, 1000);

// order source collection by random numbers and then take N elements:
var searchOne = finalResultz.OrderBy(x => rnd.Next()).Take(elementsCount);

关于c# - 如何从C#中的列表或var中获取随机数量的详细信息,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/36261933/

10-11 10:42