web-dev-qa-db-ja.com

EFコードからテーブルを削除する最初の移行

最初にEFコードで、1つのテーブルから1つの列を削除してから、別のテーブルを削除したいと思います。

クラスファイルから1つの列を削除すると、自動的に1つの移行ファイルが生成されます。

しかし、テーブルを削除する方法。

どのコマンドを実行する必要がありますか?完全なクラスファイルを削除し、コンテキストファイルから次の行も削除する必要がありますか?

 public DbSet<TableClassName> TableClassNameSet { get; set; }

Add Migration'TableClassName 'コマンドを使用します。

では、テーブルを削除する最良の方法は何ですか?

6
DevPerson

前回の移行で変更を加えたばかりの場合は、 ロールバック その移行を行うことができます。それ以外の場合は、モデルを調整するだけで、次の移行で変更が反映されます。テーブルを削除するには、対応するDbSet<MyClass>と、モデルの他の部分にあるそのクラスへの参照を削除するだけで、EFはDropTableを移行に自動的に追加します。 Entity Framework以外の目的でクラスを使用しなくなった場合は、クラスを削除できます。

5
Steve Greene

テーブルを削除するには、DBMigrationクラスのDropTable("YourTable")メソッドでUp()を使用できます。

移行をカスタマイズする方法のその他の例については、次のリンクも参照してください。

https://msdn.Microsoft.com/en-au/data/jj591621.aspx#customizing

1
woodykiddy
  1. この行をコンテキストクラスから削除します

    public DbSet TableClassNameSet {get;セットする; }

  2. 次のコマンドを実行します。

    Update-DataBase -force -verbose

0
Efrain Mejias C