private async Task ReloadDataContext()
        {
            if (!string.IsNullOrEmpty(_dte.Solution.FileName))
            {
                Config.SetSolution(_dte.Solution.FileName);

                var myWorkspace = CoverageOverviewCommand.Instance.MyWorkspace;
                var rewrittenDocumentsStorage = new RewrittenDocumentsStorage();

                ISolutionExplorer solutionExplorer = new SolutionExplorer(rewrittenDocumentsStorage, myWorkspace);
                ICoverageSettingsStore settingsStore = new XmlCoverageSettingsStore();
                ICoverageStore coverageStore = new SqlCompactCoverageStore();

                ITestExplorer testExplorer = new TestExplorer(solutionExplorer,
                    new NUnitTestExtractor(), coverageStore, settingsStore);
                var xmlCoverageStore = new SqlCompactCoverageStore();                

                var vsSolutionTestCoverage = VsSolutionTestCoverage.CreateInstanceIfDoesNotExist(myWorkspace,
                    new SolutionCoverageEngine(),
                    xmlCoverageStore);

                var coverageOverviewViewModel = new CoverageOverviewViewModel(testExplorer, settingsStore,
                    vsSolutionTestCoverage);

                await coverageOverviewViewModel.PopulateWithTestProjectsAsync();

                DataContext = coverageOverviewViewModel;
            }
        }
        public void Init(Workspace myWorkspace)
        {
            var nUnitTestExtractor = new NUnitTestExtractor();
            _solutionExplorer = new SolutionExplorer(new RewrittenDocumentsStorage(), myWorkspace);
            _auditVariablesRewriter = new AuditVariablesRewriter(new AuditVariablesWalker(), nUnitTestExtractor);
            _coverageStore = new SqlCompactCoverageStore();
            var settingsStore = new XmlCoverageSettingsStore();
            _testExplorer = new TestExplorer(_solutionExplorer, nUnitTestExtractor, _coverageStore, settingsStore);

        }