Day5---C# listA 克隆 listB
listA =listB 时,不管listA 或者listB 修改了,2个都会同时修改,需要用克隆的方式
listA =clone(listB);
public static List<T> Clone<T>(this List<T> list) where T : new() { List<T> items = new List<T>(); foreach (var m in list) { var model = new T(); var ps = model.GetType().GetProperties(); var properties = m.GetType().GetProperties(); foreach (var p in properties) { foreach (var pm in ps) { if (pm.Name == p.Name) { pm.SetValue(model, p.GetValue(m)); } } } items.Add(model); } return items; }
浙公网安备 33010602011771号