コード例 #1
0
        static void Main(string[] args)
        {
            var config = new ConfigurationBuilder()
                         .AddJsonFile(ConfigurationFileName, false, reloadOnChange: true)
                         .AddEnvironmentVariables()
                         .Build();
            var sc = new ServiceCollection();

            sc
            .AddLogging(x => x.ClearProviders().SetMinimumLevel(LogLevel.Trace).AddNLog())
            .AddScoped <IConfiguration>(sp => config)
            .AddOptions()
            .AddMessageRouter(config)
            ;

            sc.AddRabbitMqBroker(config);

            _sp     = sc.BuildServiceProvider();
            _engine = _sp.GetRequiredService <RouterEngine>();
            _engine.Start();
            var exitEvent = new ManualResetEvent(false);

            System.Console.WriteLine($"press CTRL+C to stop");
            System.Console.CancelKeyPress += (sender, eventArgs) => {
                eventArgs.Cancel = true;
                exitEvent.Set();
            };
            exitEvent.WaitOne();
            _engine.Stop();
        }
コード例 #2
0
        public MainWindow()
        {
            InitializeComponent();

            rte = new RouterEngine();
            REngineStatus.ItemsSource    = enginelist;
            TaskStatusWindow.ItemsSource = tslist;
            BindingOperations.EnableCollectionSynchronization(tslist, tslistlock);
            BindingOperations.EnableCollectionSynchronization(enginelist, enginelistlock);
        }