Как аннотировать свойство электронной почты пользователя Identity?

Если у меня есть модель Customer, которая расширяет IdentityUser, то я могу легко аннотировать свойства, которые добавляю...

public class Customer : IdentityUser {
  [Required]
  public string Mobile { get; set; }
  // Other properties omitted for clarity
}

Если бы у меня тогда был <form>, чтобы клиент мог обновить свои данные, мне не пришлось бы выполнять какую-либо проверку номера его мобильного телефона (исходя из простого предположения, что любая непустая строка подходит для этого примера), как это сделал бы фреймворк это для меня.

Как мне это сделать, если я хочу аннотировать любое из свойств удостоверения, например Email? Эти свойства не отображаются в моем классе Customer, так как они происходят из базового класса IdentityUser.

Кто-нибудь может помочь? Спасибо

Зод: сила проверки и преобразования данных
Зод: сила проверки и преобразования данных
Сегодня я хочу познакомить вас с библиотекой Zod и раскрыть некоторые ее особенности, например, возможности валидации и трансформации данных, а также...
Валидация полей ввода для базовой формы React
Валидация полей ввода для базовой формы React
В одном из моих проектов MERN Stack есть форма с именем, фамилией, контактным номером, адресом, электронной почтой, датой рождения, номером NIC, весом...
Пользовательские правила валидации в Laravel
Пользовательские правила валидации в Laravel
Если вы хотите создать свое собственное правило валидации, Laravel предоставляет возможность сделать это. Создайте правило с помощью следующей...
1
0
185
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Как мне это сделать, если я хочу аннотировать любое из свойств удостоверения, например, адрес электронной почты? Эти свойства не отображаются в моем классе Customer, поскольку они взяты из базового класса IdentityUser.

Вы можете переопределить и использовать аннотации данных для этих свойств, как показано ниже.

public class Customer : IdentityUser
{
    [Required]
    public string Mobile { get; set; }

    [StringLength(20)]
    public override string Email { get; set; }

    // Other properties omitted for clarity
}

Кроме того, вы можете использовать свободный API для настройки модели и переопределения аннотаций данных. Для получения дополнительной информации ознакомьтесь с этим документом: https://learn.microsoft.com/en-us/ef/core/modeling/#use-fluent-api-to-configure-a-model

Спасибо, это как раз то, что мне было нужно!

Avrohom Yisroel 10.12.2020 16:29

Другие вопросы по теме