Изменение реализации Random() в .NET

Я переношу метод, используемый для декодирования, с .NET Framework 1.1 на .NET Framework 4. Я заметил, что реализация Randomизменилась. Таким образом, при одном и том же начальном значении Random.NextBytesвозвращает другой результат.

Итак, если я запущу следующий код.

byte[] bytes = new byte[4];
System.Random random = new System.Random(50);
random.NextBytes(bytes);

for(int i=0; i< bytes.Length; i++)
{
  Console.WriteLine("bytes[" + i + "] = " + bytes[i]);
}

В .NET Framework 1.1 возвращается:

bytes[0] = 216
bytes[1] = 124
bytes[2] = 183
bytes[3] =  58

В .NET framework 4 возвращается:

bytes[0] = 154
bytes[1] =  49
bytes[2] = 183
bytes[3] =  48

Как лучше всего решить эту проблему?

16
задан Hand-E-Food 18 March 2012 в 22:33
поделиться