下面的工具函数可以构造source对象的deep copy,很有用!不妨一试
using System.IO;
using System.Runtime.Serialization.Binary;
public object static DeepClone(object source)
{
? if (source==null) return null;
? using (MemoryStream stream = new MemoryStream())
? {
??? BinaryFormatter?formatter = new BinaryFormatter();
??? formatter.Serialize(stream, source);
??? stream.Position = 0;
??? return?formatter.Deserialize(stream);
? }
}