Каков правильный способ генерации случайных чисел в приложении ASP.NET MVC, если мне нужно точно одно число на запрос? Согласно MSDN, чтобы получить хаотичность достаточного качества, необходимо создать несколько номеров, используя один объект System.Random, созданный один раз. Поскольку для каждого запроса в MVC создается новый экземпляр класса контроллера, я не могу использовать приватное поле, инициализированное в конструкторе контроллера для объекта Random. Итак, в какой части приложения MVC я должен создавать и хранить объект Random? В настоящее время я хранить его в статическом поле класса контроллера и лениво инициализировать его в методе действий, который использует его:Генерация случайных чисел в приложениях MVC
public class HomeController : Controller
{
...
private static Random random;
...
public ActionResult Download()
{
...
if (random == null)
random = new Random();
...
}
}
Поскольку поле «случайное» может быть доступно несколько экземплярами класса контроллера, это возможно ли его значение стать поврежденным, если два экземпляра попытаются его инициализировать одновременно? И еще один вопрос: я знаю, что срок службы статики - это время жизни приложения, но в случае приложения MVC, что это такое? Это от запуска IIS до закрытия IIS?