C#深拷贝(克隆)

1.深拷贝

应用场景(引用类型):汇总打印数据时,会进行计算,导致软件界面展示数据时,打印后和打印前展示的明细数据不相同。

/// <summary>
        /// 实体深度复制
        /// </summary>
        /// <typeparam name="T"></typeparam>
        /// <param name="RealObject"></param>
        /// <returns></returns>
        public static T Clone<T>(T RealObject)
        {
            using (Stream objectStream = new MemoryStream())
            {
                IFormatter formatter = new BinaryFormatter();
                formatter.Serialize(objectStream, RealObject);
                objectStream.Seek(0, SeekOrigin.Begin);
                return (T)formatter.Deserialize(objectStream);
            }
        }
原文地址:https://www.cnblogs.com/yuanshuo/p/15597143.html