public static object DeepClone(object currentObject) ...{ MemoryStream memoryStream = new MemoryStream(); BinaryFormatter formatter = new BinaryFormatter(); formatter.Serialize(memoryStream, currentObject); memoryStream.Position = 0; return formatter.Deserialize(memoryStream); }