partial void CopyExtraPropertiesToClone(Project clone, bool includeLocalProperties);
public Project Clone(bool includeLocalProperties) { var c = new Project { AutoNumberRequirements = AutoNumberRequirements, AutoNumberScripts = AutoNumberScripts, Description = Description, EstimatedEndDate = EstimatedEndDate, Id = Id, Independent = Independent, ManagerId = ManagerId, ManagerUserName = ManagerUserName, Name = Name, OrderNumber = OrderNumber, OrganisationId = OrganisationId, OrganisationName = OrganisationName, ProjectCategory = ProjectCategory, ProjectCategoryId = ProjectCategoryId, ProjectCategoryName = ProjectCategoryName, RequirementNumberReadOnly = RequirementNumberReadOnly, ScriptNumberReadOnly = ScriptNumberReadOnly, Slug = Slug, StartDate = StartDate, TimeTrackingConfiguration = TimeTrackingConfiguration, Widgets = Widgets, Components = Components.Select(x=>x.Clone(includeLocalProperties)).ToList(), ExecutionPackages = ExecutionPackages.Select(x=>x.Clone(includeLocalProperties)).ToList(), ExternalSystemLinks = ExternalSystemLinks.Select(x=>x.Clone(includeLocalProperties)).ToList(), IncidentResolutions = IncidentResolutions.Select(x=>x.Clone(includeLocalProperties)).ToList(), IncidentStatuses = IncidentStatuses.Select(x=>x.Clone(includeLocalProperties)).ToList(), IncidentTypes = IncidentTypes.Select(x=>x.Clone(includeLocalProperties)).ToList(), Priorities = Priorities.Select(x=>x.Clone(includeLocalProperties)).ToList(), RequirementDifficulties = RequirementDifficulties.Select(x=>x.Clone(includeLocalProperties)).ToList(), RequirementPackages = RequirementPackages.Select(x=>x.Clone(includeLocalProperties)).ToList(), RequirementStatuses = RequirementStatuses.Select(x=>x.Clone(includeLocalProperties)).ToList(), RequirementTypes = RequirementTypes.Select(x=>x.Clone(includeLocalProperties)).ToList(), ScriptPackages = ScriptPackages.Select(x=>x.Clone(includeLocalProperties)).ToList(), Statuses = Statuses.Select(x=>x.Clone(includeLocalProperties)).ToList(), TestTypes = TestTypes.Select(x=>x.Clone(includeLocalProperties)).ToList(), Versions = Versions.Select(x=>x.Clone(includeLocalProperties)).ToList(), }; CopyExtraPropertiesToClone(c, includeLocalProperties); return c; }