Сбой Update-Database в EF Core при создании целочисленной базы данных - PullRequest
1 голос
/ 02 мая 2020

Я использую EF Core 3.0. У меня есть AppUser, который расширяет Microsoft IdentityUser. Я должен интегрироваться с другим API, что вынуждает меня представлять мой AppUser целочисленным идентификатором. Мой AppUser PK, однако, является строкой. У меня возникла идея, что мой AppUser также будет содержать свойство с именем ShortId, которое будет целым числом, сгенерированным базой данных при вставке. Поэтому объявление моего класса выглядит следующим образом:

    public class AppUser : IdentityUser
    {
        public string Name { get; set; }
        public string Surname { get; set; }
        ...
        [Required]
        [DatabaseGenerated(DatabaseGeneratedOption.Identity)]
        public int ShortId { get; set; }
    }

Однако после добавления миграции и запуска Update-Database появляется ошибка, говорящая о

Could not create IDENTITY attribute on nullable column 'ShortId', table 'AspNetUsers'.

Я четко пометил свой столбец [Обязательный] атрибут, поэтому должно быть ясно, что этот столбец не может быть пустым. Однако оператор вставки SQL по-прежнему выглядит так, что, похоже, выдает ошибку:

CREATE TABLE ... (
...
[ShortId] int NULL IDENTITY,
... )
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...