初回のみ動作しますが、...データベースと初回のみ動作するようです:Entityframeworkコア2.0は、移行が、私はEntityFrameworkコア2.0の移行システムの問題を得た
私はコマンドを使用する場合:add-migration InitialMigration
移行コードが生成され、すべて正常に動作します。しかし、私がdatabase-update
を使用すると、何も起こりません...
接続名の文字列をランダムな名前で変更した場合(例として123を追加)、コマンドdatabase-update
が動作し、この新しいデータベース...
他のマイグレーションをしようとすると同じ問題が発生します。何も起こらないので、マイグレーションコードを生成するためにデータベース名を再度変更する必要があります。
DbContext:
public class TestProjectDbContext : DbContext
{
public TestProjectDbContext(DbContextOptions<TestProjectDbContext> options) : base(options)
{
}
public DbSet<User> User { get; set; }
}
ユーザークラス(名前空間のTestProject.Data.Models)
public class User
{
public int Id { get; set; }
public string LastName { get; set; }
public string FirstName { get; set; }
public string Login { get; set; }
public string Email { get; set; }
public DateTime Created { get; set; }
}
接続文字列の形式(appsettings.json)
{
"ConnectionStrings": {
"DefaultConnection": "Server=IPADRESS;Database=TestProject;User Id=xxxxxx; Password=xxxxxx;MultipleActiveResultSets=True"
},
感謝:)私は下図のようにあなたのコードは私の作品
あなたの代わりに、「アップデート・データベース」の「データベース更新」を実行していると信じている二一見した後
感謝を。 データベース構造が一致しないため、移行コードが生成されるはずです。 私のテストでは、テストクラスに新しい属性を追加しました。このため、このテストテーブルに新しい列を追加する必要があります。 データベースをコピーして接続文字列をこのコピーにルーティングすると、 "add-migration"コマンドが機能します...しかし、 "database-update"は... 次に接続文字列を最初のデータベースと "update-database"コマンドが機能します... 同じDB上で複数回コマンドを実行することはできません...かなり面倒です! –
@BenChaff dbContextと更新しようとしているモデルクラスを投稿できますか?問題を再現するためにはそれらが必要になります。 – user1567453
私はこれらの情報を使ってインサイトの投稿を編集しました。ありがとう –