Миграция C # Entity Framework, автоматическое увеличение идентификатора - PullRequest
0 голосов
/ 25 мая 2018

У меня есть таблица, которая используется в контексте Entity Framework, которая была сгенерирована с использованием подхода, основанного на базе данных.

Я допустил ошибку, и ID для одной таблицы не является автоинкрементным.Я не уверен, что лучший подход для решения этой проблемы.

Должен ли я удалить таблицу и сгенерировать ее снова?

Могу ли я выполнить миграцию для автоматического увеличения этого идентификатора?

Есть ли другой вариант?

Заранее спасибо

Ответы [ 2 ]

0 голосов
/ 25 мая 2018

Вы можете разрешить миграцию кода и обновить базу данных:

  1. Добавить атрибут [DatabaseGenerated(DatabaseGeneratedOption.Identity)] в столбец идентификатора

  2. Выполнить эту командув консоли диспетчера пакетов для включения миграций:

    Enable-Migrations
    
  3. Обновите базу данных с помощью следующих команд:

    Add-Migration
    Update-Database
    

    (сначала запустите Add-Migration, а затем запустите Update-Database команда)

0 голосов
/ 25 мая 2018

Если таблица была создана с использованием базы данных сначала, вы можете изменить ее в SSMS, если вы используете это?Затем откройте файл .edmx в Visual Studio, щелкните правой кнопкой мыши фон где-нибудь и выберите обновление модели из базы данных.Перейдите к нужным параметрам (возможно, просто к таблице обновления), после того как вы это сделаете, вам нужно будет сохранить файл .edmx.

...