博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

C# 深拷贝通用方法

Posted on 2015-05-29 14:35  system_kk  阅读(328)  评论(0编辑  收藏  举报

C#深拷贝通用方法(引用类型的拷贝)

 1  /// <summary>
 2         /// 深度COPY
 3         /// </summary>
 4         /// <typeparam name="T"></typeparam>
 5         /// <param name="obj"></param>
 6         /// <returns></returns>
 7         public static T DeepClone<T>(T obj)
 8         {
 9             T objResult;
10             using (MemoryStream ms = new MemoryStream())
11             {
12                 BinaryFormatter bf = new BinaryFormatter();
13                 bf.Serialize(ms, obj);
14                 ms.Position = 0;
15                 objResult = (T)bf.Deserialize(ms);
16             }
17 
18             return objResult;
19         }
View Code