public static IContainer Configure(ILogger logger)
        {
            var builder = new ContainerBuilder();

            builder.Register(context =>
            {
                ILogFolder logFolder = context.Resolve <ILogFolder>();
                IMainModel model     = MainModel.Create(logFolder, logger);
                return(model);
            }).As <IMainModel>();

            builder.Register(context =>
            {
                IMainModel mainModel = context.Resolve <IMainModel>();
                IMainViewModel mainWindowViewModel = new MainViewModel(mainModel, logger);
                return(mainWindowViewModel);
            }).As <IMainViewModel>();

            builder.Register(context =>
            {
                ILogFolder logFolder = new LogFolder();
                return(logFolder);
            }).As <ILogFolder>();


            IContainer container = builder.Build();

            return(container);
        }
示例#2
0
 public LogProvider(
     ILogFolder logFolder,
     ILogFile logFile)
 {
     _logFolder = logFolder;
     _logFile   = logFile;
 }
        public RollingFileManager(IRollingFileSettings settings, ILogFolder logFolder = null)
        {
            if (settings == null)
                throw new ArgumentNullException("settings");

            _settings = settings;
            _logFolder = logFolder ?? new LogFolder(settings.BasePath, settings.BaseFileName);
            _sync = new object();
        }
        public RollingFileManager(IRollingFileSettings settings, ILogFolder logFolder = null)
        {
            if (settings == null)
            {
                throw new ArgumentNullException("settings");
            }

            _settings  = settings;
            _logFolder = logFolder ?? new LogFolder(settings.BasePath, settings.BaseFileName);
            _sync      = new object();
        }
        private MainModel(ILogFolder logFolder, ILogger logger)
        {
            _logFolder = logFolder;
            _logger    = logger;

            AssemblyName assemblyName = Assembly.GetExecutingAssembly().GetName();

            WindowTitle  = assemblyName.Name;
            SoftwareName = $"{assemblyName.Name} {assemblyName.Version.ToString()}";

            //Just test
            Status = "Some status";
        }
 public static MainModel Create(ILogFolder logFolder, ILogger logger)
 {
     return(new MainModel(logFolder, logger));
 }