Невозможно вставить явное значение для столбца идентификаторов в таблице, если для параметра вставки идентификаторов установлено значение off - PullRequest
0 голосов
/ 22 октября 2019

Я попытался заполнить таблицу, сгенерированную с помощью EF Core, значениями через Microsoft SQL Management Studio, поскольку список был предопределен и не требует редактирования в будущем. Я получил ошибку, которую написал в заголовке внутри консоли SSMS.

Мне удалось решить проблему, написав SET IDENTITY_INSERT Countries ON над сценарием, который вставил бы все значения.

Эта проблемапохоже, связано с атрибутом первичного ключа.

Мой вопрос таков: как это исправить, используя методы EF Core вместо команды SET IDENTITY_INSERT ON SQL, и в чем именно заключается проблема?

Таблица задач:

public class Country
{
    public string Code { get; set; }
    [Required]
    public int Id { get; set; }
    public string LongName { get; set; }
    [Required]
    public string Name { get; set; }
}

1 Ответ

1 голос
/ 22 октября 2019

Вам необходимо применить атрибут аннотации к идентификатору, и он сделает всю работу

[DatabaseGeneratedAttribute(DatabaseGeneratedOption.Identity)]
public int Id { get; set; }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...