Я нашел это в Stackoverflow ...
static int GetNextInt32(RNGCryptoServiceProvider rnd)
{
byte[] randomInt = new byte[4];
rnd.GetBytes(randomInt);
return Convert.ToInt32(randomInt[0]);
}
... и написал это ...
//shuffle stack to keep randomness
Fish[] arr = Temp.ToArray(); // stack to array
//Use a cryptographic random object generator
RNGCryptoServiceProvider rnd = new RNGCryptoServiceProvider(); // random object provider
Fish[] MyRandomArray = arr.OrderBy(x => GetNextInt32(rnd)).ToArray(); // shuffle object array
//array to stack
Temp = new Stack<Fish>(MyRandomArray);
return Temp;
Примечание: «Temp» - это стек введите 'Fi sh', и в нем уже есть значения "Pressed".