Example #1
0
        private List <MergedInSolutionComponent> GetSolutionComponentsForSolution(Solution solution)
        {
            var output = new List <MergedInSolutionComponent>();;

            if (solution != null)
            {
                var typesAllowed = ComponentTypesSolutionMapping
                                   .Where(k => k.Value == solution.UniqueName)
                                   .Select(k => k.Key)
                                   .ToList();
                foreach (var type in typesAllowed)
                {
                    if (type.IndexOf("_") > -1)
                    {
                        output.AddRange(SolutionComponents
                                        .Where(k => k.Type == SolutionComponentType.WebResource)
                                        .Where(k => ((WebResourceData)k.ObjectDefinition).WebResourceType.ToString() == type.Split('_')[1]));
                    }
                    else
                    {
                        output.AddRange(SolutionComponents.Where(k => ((int)k.Type).ToString() == type));
                    }
                }
                //return SolutionComponents
                //        .Where(k => typesAllowed.IndexOf(((int)k.Type).ToString()) > -1)
                //        .ToList();
            }
            return(output);
        }
Example #2
0
        private List <MergedInSolutionComponent> GetUnasiggnedSolutionComponents()
        {
            var affectedSolutions  = GetAffectedSuperSolutions();
            var assignedComponents = new List <MergedInSolutionComponent>();

            foreach (var solution in affectedSolutions)
            {
                assignedComponents.AddRange(GetSolutionComponentsForSolution(solution));
            }
            return
                (SolutionComponents
                 .Where(k => assignedComponents.FirstOrDefault(l => l.ObjectId == k.ObjectId) == null)
                 .ToList());
        }