Как объявить переменные класса как константы - PullRequest
0 голосов
/ 09 октября 2019

Я новичок в написании файлов модульных тестов в .Net Core. У меня есть постоянный файл, в котором мне нужно создать список объектов для класса.

Ниже код работает.

public class user
{
    public const Int ID = "1";
    public const String Name = "FakeUserId1";
    public readonly List<access> p  = new List<access>(){
        new access {
            edit = true,
            edit = true,
            siteid = 123
        },
        new access {
            edit = true,
            edit = false,
            siteid = 234
        }
    };
}

public class access
{
    public Boolean edit;
    public Boolean delete;
    public int siteid;
}

Можно ли объявить переменные класса доступа как константы и инициализировать их в списке?

Что-то вроде этого

public class access
{
  public const Boolean edit;
  public const  Boolean delete;
  public const int siteid;
}

1 Ответ

1 голос
/ 09 октября 2019

Ну, вы можете пометить поля как readonly и указать конструктор:

public class access
{
    public readonly Boolean edit;
    public readonly Boolean delete;
    public readonly int siteid;
    public access(Boolean e, Boolean d, int s)
    {
        edit = e;
        delete = d;
        sideid = s;
    }
}

А затем в вашем user классе:

public readonly List<access> p  = new List<access>(){
    new access(true, true, 123),
    new access(true, false, 234)
}
...