private void ComposeObjects()
        {
#if CSV
            var dataProvider = new StudentsCsvProvider(@"..\..\StudentsRepo.csv");
#else
            var dataProvider = new StudentsXmlProvider(@"..\..\StudentsRepo.xml");
#endif
            var vm   = new MainViewModel(dataProvider);
            var view = new MainView(vm);

            Application.Current.MainWindow = view;
        }
        private void ComposeObjects()
        {
            // Sem usar DI, criamos as dependencias manualmente.
            // MainView() depende de MainViewModel() que depende de DataProvider<Students>() que é implementado por StudentsXmlProvider() ou StudentsCsvProvider()

#if CSV
            var dataProvider = new StudentsCsvProvider(@"..\..\StudentsRepo.csv");
#else
            var dataProvider = new StudentsXmlProvider(@"..\..\StudentsRepo.xml");
#endif
            var vm   = new MainViewModel(dataProvider);
            var view = new MainView(vm);

            Application.Current.MainWindow = view;
        }