生成数字序列[重复]

2024-02-10

我想在 asp.net mvc2 中创建序列号..

那么数字应该从{ 0 to 1000}。我尝试如下,

 var seq = Enumerable.Range(1, 1000);
        ViewData["OrderNo"] = seq;

In view:

 <%:Html.Hidden("OrderNo") %>
            <%:ViewData["OrderNo"] %>  

我的结果是

System.Linq.Enumerable+<RangeIterator>d__b8

但是当在视图中获取价值时,它不起作用......如何生成连续数字?


如果你想枚举一个数字序列(IEnumerable<int>) from 0到一个变量end,然后尝试

Enumerable.Range(0, ++end);

解释一下,要获取从 0 到 1000 的数字序列,您希望该序列从 0 开始(请记住,0 到 1000(含)之间有 1001 个数字)。


如果你想要一个无限的线性序列,你可以编写一个像这样的函数

IEnumerable<int> Series(int k = 0, int n = 1, int c = 1)
{
    while (true)
    {
        yield return k;
        k = (c * k) + n;
    }
}

你可以像这样使用

var ZeroTo1000 = Series().Take(1001);

如果您想要一个可以重复调用以生成递增数字的函数,也许您想要类似的东西。

using System.Threading;

private static int orderNumber = 0;

int Seq()
{
    return Interlocked.Increment(ref orderNumber);
}

你打电话时Seq()它将返回下一个订单号并递增计数器。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

生成数字序列[重复] 的相关文章

随机推荐