在“代码优先” EF方法中,我更改了属性的类型:
之前:
DateTime Date { get; set; }
之后:
DateTimeOffset Date { get; set; }
然后我执行了(Package Manager控制台):
Add-Migration Foo
哪个创建了以下代码:
public partial class Foo : DbMigration
{
public override void Up()
{
AlterColumn("dbo.Foos", "Date", c => c.DateTimeOffset(nullable: false, precision: 7));
}
public override void Down()
{
AlterColumn("dbo.Foos", "Date", c => c.DateTime(nullable: false));
}
}
但这在执行更新时(Package Manager控制台)不起作用:
Update-Database
错误:
错误号:5074,状态:1,类:16对象 'DF__Foo__2B2A60FE'取决于列'Date'。 ALTER TABLE ALTER COLUMN日期失败,因为一个或多个对象 访问此列。
我该如何解决?我没有在其他部分引用此列(没有索引)
答案 0 :(得分:0)
正如Ivan Stoev在评论中所说,此问题已通过更新为EF 6.2(我使用的是EF 6.1.3)得以解决