我想创建私有列表,同时将其公开为readonly \ unwriteable,无法将\ remove \ insert cells \ nodes添加到列表中。
我目前的解决方案是:
public IEnumerable<DataToken> DataTokens {
get {
return from v in _datatokens select v;
}
}
private List<DataToken> _datatokens;
我知道该物业的名称很好,但该变量的名称怎么样?我无法将其命名为dataTokens
,因为它是参数的名称格式。目前我称之为_datatokens
这是一个非常糟糕的名字。
有更好的选择吗?我无法在msdn。
找到任何关于它的信息答案 0 :(得分:2)
由于标识符在C#中区分大小写,因此datatokens
作为变量名称没有任何内容。
MSDN上有guideline可用,表示它是dataTokens
(驼峰)。
顺便说一下,你应该使用ReadOnlyCollection<T>
作为返回类型,使它只读到外面的世界,所以我建议用不同的访问修饰符将它分成两个属性。
答案 1 :(得分:0)
C#还支持自动属性,因此您可以省去解决这个难题的麻烦,并简单地声明您的属性;
public IEnumerable<DataToken> DataTokens { get; private set; }