示例#1
0
        public SerializablePhaseCollection GetPhasesFromModel()
        {
            var phasesFromModel = new SerializablePhaseCollection();
            var phases          = new Model().GetPhases();

            foreach (Phase phase in phases)
            {
                var serializablePhase = new SerializablePhase(phase);
                phasesFromModel.Add(serializablePhase);
            }
            phasesFromModel.Sort();
            return(phasesFromModel);
        }
示例#2
0
        public SerializablePhaseCollection GetConflicts(SerializablePhaseCollection phasesFromFile, SerializablePhaseCollection phasesFromModel)
        {
            var conflicts = new SerializablePhaseCollection();

            foreach (var phaseFromFile in phasesFromFile.List)
            {
                int phaseInModelIndex = phasesFromModel.List.FindIndex(p => p.Number.Equals(phaseFromFile.Number));
                if (phaseInModelIndex >= 0)
                {
                    var phaseInModelWithSameNumber = phasesFromModel.List[phaseInModelIndex];

                    if (phaseInModelWithSameNumber.Name.Equals(phaseFromFile.Name) == false |
                        phaseInModelWithSameNumber.Comment.Equals(phaseFromFile.Comment) == false)
                    {
                        conflicts.Add(phaseFromFile);
                    }
                }
            }

            return(conflicts);
        }