Looking for c# Keywords? Try Ask4Keywords

C# Language Автореализованные свойства


пример

Авто-реализованные свойства были введены в C # 3.
Авто-реализованное свойство объявляется с пустым getter и setter (accessors):

public bool IsValid { get; set; }

Когда в вашем коде записывается автоматически реализованное свойство, компилятор создает личное анонимное поле, доступ к которому можно получить только через аксессуры свойства.

Вышеприведенный автозаполняемый оператор свойства эквивалентен написанию этого длинного кода:

private bool _isValid;
public bool IsValid
{
    get { return _isValid; }
    set { _isValid = value; }
}

Автообновленные свойства не могут иметь никакой логики в их аксессуарах, например:

public bool IsValid { get; set { PropertyChanged("IsValid"); } } // Invalid code

Однако свойство автообновления может иметь разные модификаторы доступа для своих аксессуаров:

public bool IsValid { get; private set; }    

C # 6 позволяет автоматически реализованным свойствам вообще не устанавливать сеттер (делая его неизменным, поскольку его значение может быть установлено только внутри конструктора или жестко закодировано):

public bool IsValid { get; }    
public bool IsValid { get; } = true;

Для получения более подробной информации об инициализации авто Реализуемого свойства, читать Инициализаторы Auto-свойство документацию.