У меня есть домашний фреймворк, который включает простой класс ServiceLocator, реализованный с использованием статического словаря. Он был разработан для среды WinForms и отлично делал то, что хотел.
Это оказывается катастрофой при использовании фреймворка в качестве фреймворка ASP.Net; словарь, статическая переменная, создается при первом использовании, и каждое приложение ASP.Net использует один и тот же словарь. Это НЕ мое дизайнерское намерение.
Например, веб-приложение пытается зарегистрировать службу аудита БД, IAuditService. Ошибка!! Сервис уже зарегистрирован первым пользователем! Это лишь подсказка о проблемах со статическими переменными, которые могут возникнуть в среде ASP.Net.
Я экспериментировал с Autofac IOC. Могу ли я избежать проблем со статическими переменными, используя Autofac (или другой IOC)?
BP ....