1

デプロイ時にテスト サーバー データベースを更新する必要がありますが、その方法が見つかりません。自動移行は使用していないため、手動で行います。

テストサーバーで直接実行できますか? 多分コンソールプログラム?

ローカル開発に NuGet 呼び出しを使用しています: Update-Database スクリプト ファイルを生成できることはわかっていますが、手動で行う必要がありますか?

4

2 に答える 2

2

MigrateDatabaseToLatestVersion データベース初期化子を使用して、コードまたは構成を通じて移行を実行できます。コードでは、アプリケーションの起動時に次のことを行います。

Database.SetInitializer<MyContext>(
    new MigrateDatabaseToLatestVersion<MyContext, MyMigrationConfig>()
);

または、アプリの .config ファイルで:

<entityFramework>
    <contexts>
      <context type="MyContext">
        <databaseInitializer
          type="System.Data.Entity.MigrateDatabaseToLatestVersion`2[
              [MyContext], [MyMigrationConfig]
         ], EntityFramework" />
      </context>
    </contexts>
</entityFramework>
于 2012-08-25T06:28:59.060 に答える
0

Visual Studio を使用している場合は、発行機能を使用してスクリプトを実行することもできます。詳細については、こちらをご覧ください。

http://learn.iis.net/page.aspx/1081/building-a-web-deploy-package-from-visual-studio-2010/

チームの資金調達サーバーを使用している場合は、自動化することもできます。

http://weblogs.asp.net/jdanforth/archive/2010/04/24/package-and-publish-web-sites-with-tfs-2010-build-server.aspx

また、スクリプトを生成するには、migrate.exe (nuget パッケージを取得するときに ef 4.3 に付属していると思います) を使用して、ビルド後のイベントで実行することもできます...

于 2012-08-24T23:41:14.157 に答える