我有一个简单的ASP.NET MVC应用程序,它首先使用Entity Framework代码。
这是项目的结构:有三层:
我在模块模型
中添加了一个名为ImageUrl
的新属性
public class Module:TEntity
{
[ScaffoldColumn(false)]
public string ModuleCode { get; set; }
public string DisplayName { get; set; }
public string Description { get; set; }
[ScaffoldColumn(false)]
public DateTime CreatedDate { get; set; }
[ScaffoldColumn(false)]
public string CreatedUser { get; set; }
[ScaffoldColumn(false)]
public string IsActive { get; set; }
[ScaffoldColumn(false)]
public string ParentModule { get; set; }
[ScaffoldColumn(true)]
public string ImageUrl { get; set; }
}
和我的dbContext
课程如下:
public DbSet<Module> WebMstModule { get; set; }
public Direct2M3DBContext() : base(new DatabaseFactory().GETDATABASE(SystemType.DIRECT2M3).getConnectionStr()) {
}
protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
modelBuilder.Entity<Model.Direct2M3.Module.Module>().ToTable("WebMstModule");
}
然后我使用
启用了迁移Enable-Migrations -ContextTypeName Direct2M3DBContext
然后
Add-Migration AddImageUrl
添加迁移输出
脚手架迁移&#39; AddImageUrl&#39;。 此迁移文件的Designer代码包含当前Code First模型的快照。此快照用于在您构建下一次迁移时计算模型的更改。如果您对要在此迁移中包含的模型进行其他更改,则可以通过运行Add-Migration AddImageUrl&#39;来重新构建它。试。
最后
update-database -verbose
没有错误,但生成的迁移文件最终为空和向下方法
public partial class AddImageUrl : DbMigration
{
public override void Up()
{
}
public override void Down()
{
}
}
并且未在服务器上创建新列。
我错过了哪些步骤?
谢谢..