添加迁移后,为什么我的新类没有使用实体框架添加到数据库模式?

问题描述:

有没有什么好的理由后,我在我的模型文件夹中创建一个新的类,叫做:市添加迁移后,为什么我的新类没有使用实体框架添加到数据库模式?

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

,然后我在包控制台运行命令: Add-Migration migration3

然后:Update-Database

...我的新实体(城市)不使用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; } 
    } 

和:

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

顺便说一句,在migy自动生成的只是有一个空的向上和向下的方法。请指教。

顺便说一下,在将餐厅类中的City更改为CityId(属性名称)后,EF在迁移文件中记录了此属性名称更改(我做了Add-Migration migz)。但城市实体仍然没有记录在具有所有属性的迁移文件中,尽管它是一个新的实体。为什么?

+0

你加上'DbSet ? –

+0

就是这样。我完全忘记了谢谢! –

您必须在您的DbContext不加DbSet<T>这样的:

public DbSet<Restaurant> Restaurants {get; set;}