C#数组静态字段

时间:2017-03-12 11:33:19

标签: c# arraylist static

我刚开始写一个小应用程序。我现在正在努力工作,我正计划做更好的事情。我发现了一个错误。 我有一个静态字段的类,它是一个arraylist,它的访问是公开的。 其他类使用它,我想知道从其他类访问此字段的最佳选择是什么。 首先我想到的是它刚刚获得这个列表的getter。 但是我没有其他的想法,我决定问什么另外的选择。

问候, 贝蒂

1 个答案:

答案 0 :(得分:0)

可以用不同的方式完成,这是其中之一:

public class TestService
{
    private static readonly List<string> list = new List<string>();

    public IEnumerable<string> List
    {
        get { return list; }
    }

    //list manipulation methods...
}

基本上,您应该防止该类列表外的操作(即添加/更新/删除项目)。主要是因为该类应该负责直接列表操作。

那就是IEnumerable<string>类型背后的原因。不要在此属性上滥用List<string>施法!

现在,当您确定列表不能从类外部直接操作时,您应该在TestService类中公开公共方法。每个方法应该只有一个责任和更改的理由(SRP),换句话说,您应该有单独的方法来添加,更新和删除项目。