RequiredMember
Модификатор required у
string Name помечает свойство
атрибутом RequiredMember.
Пропуск обязательного члена -
ошибка компиляции, не исключение
в рантайме.
Синтаксис
public required string Name { get; set; }
Пример
Давайте создать объект с инициализатором:
using System;
class Gate
{
public required string Name { get; set; }
}
class Program
{
static void Main()
{
Gate gate = new Gate { Name = "abcde" };
string res = gate.Name;
Console.WriteLine(res);
}
}
Результат выполнения кода:
"abcde"
Пример
Давайте задать другое значение:
using System;
class Gate
{
public required string Name { get; set; }
}
class Program
{
static void Main()
{
Gate gate = new Gate { Name = "12345" };
string res = gate.Name;
Console.WriteLine(res);
}
}
Результат выполнения кода:
"12345"
Пример
Давайте проверить длину имени:
using System;
class Gate
{
public required string Name { get; set; }
}
class Program
{
static void Main()
{
Gate gate = new Gate { Name = "abcde" };
int res = gate.Name.Length;
Console.WriteLine(res);
}
}
Результат выполнения кода:
5
Смотрите также
-
SetsRequiredMembers,
конструктор заполняет -
NotNull,
результат не null -
MaybeNull,
результат может быть null -
NotNullWhen,
не null при условии