Автоматически создать поле свойства Automatic в C # - PullRequest
2 голосов
/ 23 ноября 2010

это моя модель:

public class Schoolclass
{
    private List<Pupil> _pupils;

    public Schoolclass()
    {
        _pupils = new List<Pupil>();
    }            

    public int SchoolclassId { get; set; }
    public string SchoolclassCode { get; set; }


    public List<Pupil> Pupils
    {
        get { return _pupils;} 
        set { _pupils = value; }
    }        
} 

Могу ли я сделать это как-то только с C # без сторонних инструментов:

[Initialize]
public List<Pupil> Pupils {get;set}

Я хочу, чтобы C # генерировал поле _pupils автоматически.

1 Ответ

8 голосов
/ 24 ноября 2010

Не существует автоматического способа, но вы все равно можете назначить свойство в конструкторе:

public Schoolclass()
{
    Pupils = new List<Pupil>();
}   

Кроме того, поскольку Pupils является коллекцией, я бы предложил сделать ее доступной только для чтения:

public List<Pupil> Pupils {get; private set;}

Обновление
Полный класс выглядел бы так:

public class Schoolclass
{
    public Schoolclass()
    {
        Pupils = new List<Pupil>();
    }            

    public int SchoolclassId { get; set; }
    public string SchoolclassCode { get; set; }
    public List<Pupil> Pupils { get; private set; }

} 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...