相关疑难解决方法(0)

.NET 4.0中的只读列表或不可修改列表

据我所知,.NET 4.0仍然缺少只读列表.为什么框架仍然缺乏此功能?这不是域驱动设计中最常用的功能之一吗?

Java对C#的优势之一就是Collections.unmodifiablelist(list)方法的形式,它似乎早在IList <T>或List <T>中已经过期了.

使用IEnumerable<T>是问题的最简单的解决方案 - ToList可以使用并返回副本.

.net c# java readonly-collection

97
推荐指数
6
解决办法
4万
查看次数

列表<T>只读私有集

我怎样才能公开一个List<T>只读它,但可以私下设置?

这不起作用:

public List<string> myList {readonly get; private set; }
Run Code Online (Sandbox Code Playgroud)

即使你这样做:

public List<string> myList {get; private set; }
Run Code Online (Sandbox Code Playgroud)

你仍然可以这样做:

myList.Add("TEST"); //This should not be allowed
Run Code Online (Sandbox Code Playgroud)

我想你可以:

public List<string> myList {get{ return otherList;}}
private List<string> otherList {get;set;}
Run Code Online (Sandbox Code Playgroud)

.net c# generics c#-3.0

50
推荐指数
4
解决办法
3万
查看次数

标签 统计

.net ×2

c# ×2

c#-3.0 ×1

generics ×1

java ×1

readonly-collection ×1