引用类型赋值处理,避免修改之后影响原值 您所在的位置:网站首页 list索引值会改变他的类型吗 引用类型赋值处理,避免修改之后影响原值

引用类型赋值处理,避免修改之后影响原值

2024-07-17 06:01| 来源: 网络整理| 查看: 265

主要是为了解决在使用引用类型的时候,传参到函数内进行了参数的赋值,返回另外一个值导致传参的值被修改了;

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 实验室设备网 版权所有