Поделиться через


field — объявления свойств с поддержкой полей

Контекстное ключевое слово field, добавленное в C# 14, можно использовать в методе доступа к свойству для доступа к синтезированному полю резервного копирования свойства компилятора. Этот синтаксис позволяет определить тело get или метод доступа и set позволить компилятору создать другой метод доступа, так как он будет автоматически реализован в свойстве.

Добавление field контекстных ключевых слов обеспечивает гладкий путь для добавления преимуществ, таких как проверка диапазона в автоматически реализованное свойство. Эта практика показана в следующем примере:

class TimePeriod4
{
    public double Hours {
        get;
        set => field = (value >= 0)
            ? value
            : throw new ArgumentOutOfRangeException(nameof(value), "The value must not be negative");
    }
}

Свойство можно реализовать Hours как автоматически реализованное свойство. Затем вы обнаружите, что хотите защититься от отрицательного значения. Вы используете field и предоставляете проверку диапазона в методе set доступа. Не нужно объявлять поле резервного копирования вручную и предоставлять текст для get метода доступа.

Дополнительные сведения см. в статьях Свойства и Индексаторы.

Спецификация языка C#

Дополнительные сведения см. в спецификации языка C#. Спецификация языка является предписывающим источником информации о синтаксисе и использовании языка C#.