Это может показаться глупым вопросом, потому что в моем коде все работает, но я зарегистрировал синглтон таким образом с контейнером Unity _ambientContainer
:
_ambientContainer.RegisterType<Application.StateContext>(new ContainerControlledLifetimeManager());
Чтобы избежать использования моего локального поля, я использую:
get {
return ServiceLocator.Current.GetInstance<Application.StateContext>();
}
внутри моего свойства get, чтобы получить экземпляр моего объекта.
Таким образом, я получаю всегда один и тот же экземпляр (Application.StateContext
все еще одноэлементный) или GetInstance
создает новый?
Лучше ли использовать локальное поле _ambientContainer
?
get {
return _ambientContainer.Resolve<Application.StateContext>();
}
Спасибо.