小编mah*_*gam的帖子

IList <T> .AsReadOnly扩展方法不适用于引用类型集合

以下是示例代码:Readonly扩展不适用于引用类型集合.如果我将Employee更改为字符串然后它将工作.有人可以解释为什么我会得到这种行为.

        List<Employee> Emps = new List<Employee>(2)
        {
            new Employee(){EmpName="E1",Year=2012,EmpID=1},
            new Employee(){EmpName="E2",Year=2012,EmpID=2}
        };
        Emps.ForEach(emp => Debug.WriteLine(emp.EmpName));
        **IList<Employee> readonlyEmp = Emps.AsReadOnly();
        readonlyEmp[0].EmpName = "EMPUpdated";**
        foreach (var emp in readonlyEmp)
        {
            Debug.WriteLine(emp.EmpName);
        }
Run Code Online (Sandbox Code Playgroud)

c# readonly

4
推荐指数
1
解决办法
573
查看次数

标签 统计

c# ×1

readonly ×1