static void Main(string[] args) { //setup our DI var serviceProvider = new ServiceCollection() .AddLogging(configure => { configure.AddConsole(); }) //.AddSingleton<SerialPort>(CreateSerialPort("COM4")) //.AddSingleton<IReadingProvider, SerialReadingProvider>() .AddSingleton <NMEA0183Parser>() .AddSingleton <ReadingParser>() .AddSingleton <IReadingProvider, SimulatedReadingProvider>() .BuildServiceProvider(); //do the actual work here var provider = serviceProvider.GetService <IReadingProvider>(); _parser = serviceProvider.GetService <ReadingParser>(); provider.OnReadingRecieved += DataRecieved; provider.Start(); Console.ReadKey(); provider.Stop(); }
public MainWindow() { InitializeComponent(); _provider = App.ServiceProvider.GetService <IReadingProvider>(); _parser = App.ServiceProvider.GetService <ReadingParser>(); ReadingListBox.ItemsSource = readings; ScatterPlot.ItemsSource = readings; F1Plot.ItemsSource = LastReadings; F2Plot.ItemsSource = LastReadings; _provider.OnReadingRecieved += DataRecieved; ChooseFileLocation(); }