如何保存随机生成的值。下一个方法C#

如何保存随机生成的值。下一个方法C#,c#,random,save,generated,C#,Random,Save,Generated,我偶然发现了一个用C中的Random.Next()方法生成不同值的方法# 代码如下: private static readonly Random random = new Random(); private static readonly object syncLock = new object(); public static int RandomNumber(int min, int max) { lock(syncLock) { // synchronize

我偶然发现了一个用C中的
Random.Next()
方法生成不同值的方法#

代码如下:

 private static readonly Random random = new Random();
 private static readonly object syncLock = new object();
 public static int RandomNumber(int min, int max)
 {
     lock(syncLock) { // synchronize
         return random.Next(min, max);
     }
 }
我的问题是,如何在每次使用这些值创建新实例并分别为每个对象使用它们时保存这些值

e、 g

现在,举个例子,如果我想创建

var purchaseDetails2 = new PurchaseDetails();
然后重新运行程序(使用F5/ctrl+F5),我希望使用第一次运行程序时生成的相同随机值。换句话说,我希望Card.ID具有相同的值,而不是随机生成的新值

我是否必须将所有值保存在
列表
数组
中? 如果是,我该怎么做?提前谢谢

我希望使用第一次运行程序时生成的相同随机值

您在内部使用的Random()重载为伪随机数生成算法生成种子

要在每次跑步中获得相同的结果,请使用

只要您的程序以确定的顺序运行,您将得到相同的“随机”数(例如,如果它使用多个线程或根据用户输入更改流,则不会是确定的)

var purchaseDetails2 = new PurchaseDetails();
private static readonly Random random = new Random(42);