コード例 #1
0
        /// <summary>
        /// Return list of Solution files path with their version compare result
        /// </summary>
        /// <param name="solutionFiles"></param>
        /// <param name="addInfoExtention"></param>
        /// <returns></returns>
        public static ConcurrentBag <Tuple <eGingerVersionComparisonResult, string> > GetSolutionFilesWithVersion(IEnumerable <string> solutionFiles, bool addInfoExtention = true)
        {
            // read all XMLs and check for version
            Parallel.ForEach(solutionFiles, FileName =>
            {
                string fileVer = string.Empty;
                eGingerVersionComparisonResult versionRes = CompareSolutionFileGingerVersionToCurrent(FileName, ref fileVer);

                if (addInfoExtention)
                {
                    solutionFilesWithVersion.Add(Tuple.Create(versionRes, FileName + "--> File Version: " + fileVer));
                }
                else
                {
                    solutionFilesWithVersion.Add(Tuple.Create(versionRes, FileName));
                }
            });

            return(solutionFilesWithVersion);
        }
コード例 #2
0
        /// <summary>
        /// Return list of the Solution files paths which match to specific result type
        /// </summary>
        /// <param name="solutionFiles"></param>
        /// <returns></returns>
        public static ConcurrentBag <string> GetSolutionFilesCreatedWithRequiredGingerVersion(ConcurrentBag <Tuple <eGingerVersionComparisonResult, string> > solutionFilesWithVersionCompare, eGingerVersionComparisonResult requiredVersion)
        {
            // read all XMLs and check for version

            ConcurrentBag <string> requiredFiles = new ConcurrentBag <string>();

            Parallel.ForEach(solutionFilesWithVersionCompare, solFile =>
            {
                if (solFile.Item1 == requiredVersion)
                {
                    requiredFiles.Add(solFile.Item2);
                }
            });

            return(requiredFiles);
        }
コード例 #3
0
ファイル: SolutionUpgrade.cs プロジェクト: ramizil/Ginger
        /// <summary>
        /// Return list of the Solution files paths which were created with higher Ginger version
        /// </summary>
        /// <param name="solutionFiles"></param>
        /// <returns></returns>
        public static ConcurrentBag <string> GetSolutionFilesCreatedWithRequiredGingerVersion(IEnumerable <string> solutionFiles, eGingerVersionComparisonResult requiredVersion, bool addInfoExtention = true)
        {
            // read all XMLs and check for version
            ConcurrentBag <string> requiredFiles = new ConcurrentBag <string>();

            Parallel.ForEach(solutionFiles, FileName =>
            {
                string fileVer = string.Empty;
                if (CompareSolutionFileGingerVersionToCurrent(FileName, ref fileVer) == requiredVersion)
                {
                    if (addInfoExtention)
                    {
                        requiredFiles.Add(FileName + "--> File Version: " + fileVer);
                    }
                    else
                    {
                        requiredFiles.Add(FileName);
                    }
                }
            });
            return(requiredFiles);
        }