Id ?? GUIDExtension::GUIDEmpty; } set { // Проверка идентификатора if (!GUIDExtension::Validate($value)) // - исключение throw new Exception("Неверный идентификатор (GUID)"); // Установка идентификатора $this->Id = $value; } } /** * @var string $Name Имя элемента. */ public string $Name; /** * @var string|null $Description Описание элемента. */ public ?string $Description; /** * @var string $URL Адрес URL элемента. */ public string $URL; /** * @var bool $OpenInNewWindow Открывать ли в новом окне (добавлять к ссылке target="_blank"). */ public bool $OpenInNewWindow; /** * @var string|null $IconClass Класс иконки. */ public ?string $IconClass; /** * @var string $ParentId Идентификатор родительского элемента. */ public string $ParentId { get { return $this->ParentId ?? GUIDExtension::GUIDEmpty; } set { // Проверка идентификатора if (!GUIDExtension::Validate($value)) // - исключение throw new Exception("Неверный идентификатор (GUID)"); // Установка идентификатора $this->ParentId = $value; } } /** * @var int $Order Порядок. */ public int $Order; /** * @inheritdoc */ public function Duplicate (): MenuItemModel { // Создание дубликата модели $model = new MenuItemModel(); // Копирование свойств ClassMapper::MapClass($this, $model); // Возврат дубликата return $model; } }