我有一个POCO工厂,它映射到我的数据库中的表dbo.Plant(SQL SERVER 2014)。数据库中的某些列的数据类型为nvarchar(max)NULL。我正在尝试使用以下代码通过EntityTypeConfiguration更改数据类型:
Property(x => x.PCode).HasMaxLength(25);
但是,在添加迁移(添加迁移名称)时,生成的Up() - 方法将不包含此列的任何更改。 但是,如果我也像这样要求:
Property(x => x.PCode).HasMaxLength(25).IsRequired();
..然后将在Up() - 方法中进行适当的更改:
AlterColumn("dbo.Plant", "PCode", c => c.String(nullable: false, maxLength: 25));
是否可以让它只注册大小的变化而不改变可空性?
编辑:我已经设法通过直接在Up()和Down()方法中进行更改来解决问题,但问题仍然存在,如果有任何事情只会使用EntityTypeConfiguration自动触发此更改。