随机始终生成相同的数字

Sca*_*net -3 c# random

我使用Random类生成任何随机整数,但它总是返回相同的数字

static Random rand = new Random();
public static int GetOrderID()
{           
     return rand.Next(Math.Abs(int.MinValue + 1), int.MaxValue);
}
Run Code Online (Sandbox Code Playgroud)

注意随机类是静态的并且在函数外部生成

Mar*_*nek 6

你会期待什么?

Math.Abs(int.MinValue + 1) 
Run Code Online (Sandbox Code Playgroud)

等于

int.MaxValue
Run Code Online (Sandbox Code Playgroud)

所以你的范围只包含一个数字.