private void RunRepair(MultiTermVersionListItem selectedVersion)
        {
            var directoriesPath = new DirectoryInfo(_packageCache).GetDirectories()
                                  .Where(n => n.Name.Contains(selectedVersion.CacheFolderName))
                                  .Select(n => n.FullName).ToList();

            foreach (var directoryPath in directoriesPath)
            {
                var msiName             = GetMsiName(selectedVersion);
                var moduleDirectoryPath = Path.Combine(directoryPath, "modules");
                if (Directory.Exists(moduleDirectoryPath))
                {
                    var msiFile = Path.Combine(moduleDirectoryPath, msiName);
                    if (File.Exists(msiFile))
                    {
                        var process = new ProcessStartInfo
                        {
                            FileName         = "msiexec",
                            WorkingDirectory = moduleDirectoryPath,
                            Arguments        = "/fa " + msiName,
                            Verb             = "runas"
                        };
                        Process.Start(process);
                    }
                }
            }
        }
        private string GetMsiName(MultiTermVersionListItem selectedVersion)
        {
            var msiName = string.Format("MTCore{0}.msi", selectedVersion.MajorVersionNumber);

            return(msiName);
        }