internal void OnSolutionLoaded(Solution solution)
        {
            try {
                if (solution.HasDnxProjects())
                {
                    LoadDnxProjectSystem(solution);
                }
            } catch (Exception ex) {
                UnloadProjectSystem();

                if (ex is DotNetCoreNotFoundException)
                {
                    var notFoundException = (DotNetCoreNotFoundException)ex;
                    DnxMessageService.ShowDotNetCoreNotInstalledError(notFoundException);
                    initializeError = notFoundException.Message + " " + notFoundException.Details;
                    DnxOutputPad.LogView.WriteError(initializeError);
                }
                else
                {
                    LoggingService.LogError(".NET Core project system initialize failed.", ex);
                    initializeError = GettextCatalog.GetString("Unable to initialize .NET Core project system. {0}", ex.Message);
                }

                OnProjectSystemFailed();
            }
        }
        void FileChanged(object sender, FileEventArgs e)
        {
            Solution solution = IdeApp.ProjectOperations.CurrentSelectedSolution;

            if (solution == null)
            {
                return;
            }

            if (!solution.HasDnxProjects())
            {
                return;
            }

            if (!IsGlobalJsonFileChanged(e))
            {
                return;
            }

            OnSolutionLoaded(solution);
        }