0

Это происходит только тогда, когда я , играя, до сих пор, но мне было интересно, какие правильные стратегии использовать, когда Миграции дают некоторую ошибку.Код структуры Entity Сначала: что делать, когда миграций недостаточно?

У меня сейчас нет конкретного примера, но бывает, что при добавлении больших обновлений в базу данных команда add-migration дает некоторую ошибку, заявляя, что она не может создать миграцию.

Так что я попытался использовать Database First стратегию по существующей базе данных, но сгенерированные классы полностью отличается от моих оригиналов, так что, похоже, это не неприемлемым широкое начинать с кода первого подхода, а затем перейти к первый подход к базе данных.

Так что мой окончательный вопрос: мы все уверены, что код первая схема являются всегда в некотором роде обновляемая, или мы должны беспокоиться о возможной черной дыры ???

ответ

0

Кажется, что вы описываете проблему разработки, которая не совсем влияет на ваших клиентов. Дело не в том, что миграция терпит неудачу при ее развертывании, скорее, вы не можете добавить ее в проект.

Это звучит как незначительная проблема. Просто делайте все возможное, чтобы решить проблему и восстановите возможность создания новых миграций. Не переключайтесь на другие стратегии разработки только потому, что ваша Visual Studio сталкивается с некоторыми проблемами. Это похоже на проблему с конкретным инструментом, изменяющим всю архитектуру вашего приложения.

Если вам нужна дополнительная помощь, укажите более подробную информацию о классах моделей и фактическом сообщении об ошибке. Кроме того, убедитесь, что проблема объективна, то есть не относится к одной машине разработки.

+0

Мой вопрос немного другой: прямо сейчас, я мог бы генерировать все необходимые миграции для моих * актуальных проектов, поэтому у меня нет проблем для решения ... Мой вопрос более теоретический: можем ли мы * доверять *, что миграции * всегда * генерируемы или существуют ограничения в том, какие изменения мы можем сделать с таблицами, отношениями и т. д.? Есть ли кто-нибудь, кто знает это? В любом случае, спасибо за вашу любезную помощь! – Andrea

+0

Миграции автоматически включают некоторые изменения модели (новые таблицы, новые столбцы, новые отношения), и вы можете вручную изменять миграции, чтобы содержать любые транзакционные операторы SQL, а также любой код C#. На практике я не могу думать о каких-либо ограничениях. –

+0

Я должен признать, что я не думал об этом в этих терминах, но теперь это еще более страшно! :-) Что произойдет после того, как я напишу такое ручное обновление с помощью операторов SQL? Каковы шансы, что я должен создать следующую миграцию? – Andrea

Смежные вопросы