引用类型赋值处理,避免修改之后影响原值 | 您所在的位置:网站首页 › list索引值会改变他的类型吗 › 引用类型赋值处理,避免修改之后影响原值 |
主要是为了解决在使用引用类型的时候,传参到函数内进行了参数的赋值,返回另外一个值导致传参的值被修改了; 1.解决方案,使用序列化的方式进行赋值可以解决该问题 public class Meachin { public List trains { get; set; } } public class Train { public string Name { get; set; } } static void test(Meachin meachin) { var list = new List(); foreach (var item in meachin.trains) { var ss = JsonConvert.SerializeObject(item); Train refundApply = JsonConvert.DeserializeObject(ss); refundApply.Name = "xiaoma"; } } static void Main(string[] args) { Train train = new Train(); train.Name = "小李"; var list =new List(); list.Add(train); Meachin meachin = new Meachin(); meachin.trains = list; test(meachin); var tt = meachin; } 该代码可以建一个控制台程序运行一下,有问题的话可以给我留言 |
CopyRight 2018-2019 实验室设备网 版权所有 |