Сценарии автозапуска базы данных ELMAH - PullRequest
5 голосов
/ 14 февраля 2012

Я хочу использовать ELMAH с сервером sql в моем проекте ASP.net MVC 3 вместе с EF 4.3.

Есть ли способ, позволяющий автоматически запускать скрипт sql, который создает таблицы elmah?

Я предполагаю, что ef-миграции могли бы справиться с этой задачей, но я еще не очень много их использовал.

Я стремлюсь к решению, где вы можете проверить решение и запустить его сразу.(для sqlexpress локально или полноценного сервера sql при развертывании) и заставить его просто работать без необходимости вручную запускать различные вспомогательные сценарии sql

Ответы [ 2 ]

5 голосов
/ 08 марта 2012

Добавьте пустую миграцию на основе кода (просто введите add-migration ElmahSetup, если нет ожидающих изменений в БД).

Затем добавьте вызовы к Sql(), чтобы запустить elmah в методе Up(). Чтобы завершить решение, вы должны добавить соответствующие операторы drop в метод Down().

3 голосов
/ 03 марта 2015

Я знаю, что этот вопрос был для EF 4.3, но если вы используете EF 6.1 , то теперь есть пакет nuget, который инициализирует таблицу Elmah и процедуры для вас: https://www.nuget.org/packages/Elmah.SqlServer.EFInitializer/. Добавить это к вашему веб-проекту. Затем он сначала использует код EF, чтобы создать его для вас. Он добавляет инициализатор в вашу папку App_Start, так что вам фактически не нужно добавлять код. Он добавит миграцию в вашу базу данных, чтобы обеспечить ее добавление только один раз.

...