CodeLength属性的更改未包含在Code First Migration中

时间:2016-07-20 17:14:43

标签: entity-framework code-first oracle12c

我有一个包含以下属性的字段:

[Column("Name")]
[StringLength(50)]
public string Name { get; set; }

此字段的迁移如下所示:

CreateTable(
"dbo.TEST",
c => new
{
     Id = c.Int(nullable: false),
     Name = c.String(maxLength: 50),
})
.PrimaryKey(t => t.Id)
.Index(t => t.Id
);

然后我改变了这样的字段:

[Column("Test_Name")]
[StringLength(255)]
public string TestName { get; set; }

并执行了Add-Migration,但StringLength更改未包含在我的Oracle数据库中仍然是NVARCHAR2(50),新迁移如下所示:

RenameColumn(table: "dbo.TEST", name: "Name", newName: "Test_Name");

这是一个常见的问题吗?

我需要做什么才能在DB中更改长度?

1 个答案:

答案 0 :(得分:0)

您已经进行了多少次迁移?在累积~20次迁移后,我们开始遇到迁移脚本创建中的错误。如果您有超过10次迁移,请尝试consolidate them。当我进行整合时,迁移脚本的生成开始正常工作。