Prizm.Domain.Entity.Setup.PipeMillSizeType.Clone C# (CSharp) Method

Clone() public method

public Clone ( ) : PipeMillSizeType
return PipeMillSizeType
        public virtual PipeMillSizeType Clone()
        {
            PipeMillSizeType clone = new PipeMillSizeType();
            var tests = new List<PipeTest>();

            foreach(var item in this.PipeTests)
            {
                tests.Add(new PipeTest()
                {
                    Category = item.Category,
                    Code = item.Code,
                    Name = item.Name,
                    MinExpected = item.MinExpected,
                    MaxExpected = item.MaxExpected,
                    StringExpected = item.StringExpected,
                    BoolExpected = item.BoolExpected,
                    FrequencyType = item.FrequencyType,
                    pipeType = clone,
                    ControlType = item.ControlType,
                    ResultType = item.ResultType,
                    IsActive = item.IsActive
                });
            }

            clone.Type = this.Type + " Copy";
            clone.PipeTests = new BindingList<PipeTest>(tests);
            clone.IsActive = this.IsActive;
            clone.Diameter = this.Diameter;
            clone.Thickness = this.Thickness;
            clone.Length = this.Length;
            clone.SeamType = this.SeamType;
            clone.IsNative = this.IsNative;
            clone.Project = this.Project;

            return clone;
        }
    }