private void LoadControllerSettings()
        {
            var settings = new ControllerSettings(StoragePath.WithFilename("Configuration.json"), Logger);

            settings.Load();

            Settings = settings;
        }
        // по умолчанию все сущности храним в БД контента сайта (кроме самого сайта и юзеров)
        // теперь получаем ссылку на репозиторий с контроллера через рефлексию, так что вызов конструктора не нужен
        //protected virtual EnumDB DB { get { return EnumDB.Content; } }

        public ControllerEditable(IControllerSettings settings) : base(settings)
        {
            Logger.LogTrace("Сonstructor ControllerEditable {0}", this.GetType().FullName);
            // здесь еще нет конекта к БД
            //Repository = Storage.GetRepository<R>(DB);

            // получить атрибуты контролера
            var type = GetType();
            var attr = (AdminControllerSettingsAttribute)type.GetTypeInfo().GetCustomAttribute(typeof(AdminControllerSettingsAttribute));

            if (attr != null && type.GetTypeInfo().IsClass)
            {
                LocalizerPrefix = attr.LocalizerPrefix;
            }
        }
        public Controller2Garin(IControllerSettings settings)
        {
            LoggerFactory = settings.LoggerFactory;
            Logger        = LoggerFactory.CreateLogger(this.GetType().FullName);
            // для красоты в логах EntityFrameworkCore
            LoggerMEF       = LoggerFactory.CreateLogger(Utils.MEFNameSpace);
            Localizer2Garin = settings.Localizer2Garin;

            Logger.LogTrace("-=-= Сonstructor Controller2Garin {0}", this.GetType().FullName);

            Storage = settings.Storage;

            //LocalizerFactory = settings.LocalizerFactory;


            Logger.LogTrace("end of Сonstructor Controller2Garin {0}", this.GetType().FullName);
        }
 public SinglePlayerControllerFactory()
 {
     ControllerSettings = StaticServiceLocator.GetService <IControllerSettings>();
 }