添加迁移后,为什么我的新类没有使用实体框架添加到数据库模式?
问题描述:
有没有什么好的理由后,我在我的模型文件夹中创建一个新的类,叫做:市添加迁移后,为什么我的新类没有使用实体框架添加到数据库模式?
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
)。但城市实体仍然没有记录在具有所有属性的迁移文件中,尽管它是一个新的实体。为什么?
答
您必须在您的DbContext不加DbSet<T>
这样的:
public DbSet<Restaurant> Restaurants {get; set;}
你加上'DbSet ? –
就是这样。我完全忘记了谢谢! –