Ejemplo n.º 1
0
        public Project Clone()
        {
            var clone = new Project
            {
                Id                      = (string)Id.Clone(),
                Name                    = (string)Name.Clone(),
                IsActive                = IsActive,
                LiftImported            = LiftImported,
                AutocompleteSetting     = AutocompleteSetting,
                VernacularWritingSystem = VernacularWritingSystem.Clone(),
                AnalysisWritingSystems  = new List <WritingSystem>(),
                SemanticDomains         = new List <SemanticDomain>(),
                ValidCharacters         = new List <string>(),
                RejectedCharacters      = new List <string>(),
                CustomFields            = new List <CustomField>(),
                WordFields              = new List <string>(),
                PartsOfSpeech           = new List <string>(),
                InviteTokens            = new List <EmailInvite>()
            };

            foreach (var aw in AnalysisWritingSystems)
            {
                clone.AnalysisWritingSystems.Add(aw.Clone());
            }
            foreach (var sd in SemanticDomains)
            {
                clone.SemanticDomains.Add(sd.Clone());
            }
            foreach (var cs in ValidCharacters)
            {
                clone.ValidCharacters.Add((string)cs.Clone());
            }
            foreach (var cs in RejectedCharacters)
            {
                clone.RejectedCharacters.Add((string)cs.Clone());
            }
            foreach (var cf in CustomFields)
            {
                clone.CustomFields.Add(cf.Clone());
            }
            foreach (var wf in WordFields)
            {
                clone.WordFields.Add((string)wf.Clone());
            }
            foreach (var pos in PartsOfSpeech)
            {
                clone.PartsOfSpeech.Add((string)pos.Clone());
            }
            foreach (var it in InviteTokens)
            {
                clone.InviteTokens.Add(it.Clone());
            }

            return(clone);
        }
Ejemplo n.º 2
0
        public Project Clone()
        {
            var clone = new Project
            {
                Id   = Id.Clone() as string,
                Name = Name.Clone() as string,
                VernacularWritingSystem = VernacularWritingSystem.Clone() as string,
                SemanticDomains         = new List <SemanticDomain>(),
                AnalysisWritingSystems  = new List <string>(),
                ValidCharacters         = new List <string>(),
                RejectedCharacters      = new List <string>(),
                CustomFields            = new List <CustomField>(),
                WordFields    = new List <string>(),
                PartsOfSpeech = new List <string>()
            };

            foreach (var sd in SemanticDomains)
            {
                clone.SemanticDomains.Add(sd.Clone());
            }
            foreach (var aws in AnalysisWritingSystems)
            {
                clone.AnalysisWritingSystems.Add(aws.Clone() as string);
            }
            foreach (var cs in ValidCharacters)
            {
                clone.ValidCharacters.Add(cs.Clone() as string);
            }
            foreach (var cs in RejectedCharacters)
            {
                clone.RejectedCharacters.Add(cs.Clone() as string);
            }
            foreach (var cf in CustomFields)
            {
                clone.CustomFields.Add(cf.Clone());
            }
            foreach (var wf in WordFields)
            {
                clone.WordFields.Add(wf.Clone() as string);
            }
            foreach (var pos in PartsOfSpeech)
            {
                clone.PartsOfSpeech.Add(pos.Clone() as string);
            }

            return(clone);
        }