//It's nice to have a copy constructor, just in case some test needs it. public ComplexContainer(ComplexContainer CopyObject) { ID = CopyObject.ID; CreateTime = CopyObject.CreateTime; Description = CopyObject.Description; References = new List <ComplexContainer>(CopyObject.References); FileMapping = new Dictionary <int, string>(CopyObject.FileMapping); SecretValue = CopyObject.SecretValue; }
public override bool Equals(object obj) { ComplexContainer testObject = null; try { testObject = (ComplexContainer)obj; } catch { return(false); } return(ID == testObject.ID & Description == testObject.Description & References.Select(x => x.ID).SequenceEqual(testObject.References.Select(x => x.ID)) & SecretValue == testObject.SecretValue & CreateTime == testObject.CreateTime & FileMapping.IsEquivalentTo(testObject.FileMapping)); }