2017-08-09 7 views
1

と呼ばれる私は私のモデルフォルダに新しいクラスを作成した後、なぜ何らかの正当な理由がある: 移行を追加した後、新しいクラスがEntity Frameworkのデータベーススキーマに追加されないのはなぜですか?

public class City 
    { 
     public int Id { get; set; } 
     public string Name { get; set; } 
    } 

、その後、私はパッケージコンソールでコマンドを実行します。その後、 Add-Migration migration3

とを:Update-Database

...私の新しいエンティティ(City)は、Entity FrameworkでデータベースにCityというテーブルを生成しません(コードの最初のアプローチ)。

public class Restaurant 
    { 
     public int Id { get; set; } 
     public string Name { get; set; } 
     public string City { get; set; } 
     public ICollection<RestaurantReview> Reviews { get; set; } 
    } 

と::

私はすでに2つの他のエンティティたところで

public class RestaurantReview 
    { 
     public int Id { get; set; } 
     public int RestaurantId { get; set; } 
     public int Rating { get; set; } 
    } 

を、migyはちょうど空の上下の方法を持っている自動生成しました。お知らせ下さい。

ところで、Restaurantクラス内のCityId(プロパティ名)を変更した後、EFはこのプロパティ名の変更をマイグレーションファイルに記録しました(私はAdd-Migration migzでした)。しかしCityエンティティは、それが新しいエンティティであっても、すべてのプロパティを持つ移行ファイルにまだ記録されませんでした。どうして?

+0

? –

+0

それはそれでした。私は本当に感謝を忘れてしまった! –

答えて

0

あなたは、このようなあなたのDbContextでDbSet<T>を追加しなければなりません:あなたはあなたのコンテキストで `DbSetを<>`を追加します

public DbSet<Restaurant> Restaurants {get; set;} 
関連する問題