Skip to content
Snippets Groups Projects
AutoTxConfigTest.cs 1.58 KiB
Newer Older
using System;
using System.IO;
using ATxCommon.Serializables;
using NLog;
using NLog.Config;
using NLog.Targets;
namespace ATxConfigTest
        private static readonly Logger Log = LogManager.GetCurrentClassLogger();

        private static ServiceConfig _config;

        private static void Main(string[] args) {
            var logConfig = new LoggingConfiguration();
            var consoleTarget = new ConsoleTarget {
                Name = "console",
                Layout = @"${date:format=yyyy-MM-dd HH\:mm\:ss} [${level}] (${logger}) ${message}",
            };
            logConfig.AddTarget("console", consoleTarget);
            var logRuleConsole = new LoggingRule("*", LogLevel.Debug, consoleTarget);
            logConfig.LoggingRules.Add(logRuleConsole);
            LogManager.Configuration = logConfig;

            var baseDir = AppDomain.CurrentDomain.BaseDirectory;
            const string mark = "----------------------------";
                Console.WriteLine($"\nTrying to parse configuration files from [{baseDir}]...\n");
                _config = ServiceConfig.Deserialize(baseDir);
                Console.WriteLine($"\n{mark} configuration settings {mark}");
                Console.Write(_config.Summary());
                Console.WriteLine($"{mark} configuration settings {mark}\n");
            }
            catch (Exception ex) {
                Console.WriteLine(ex);