如果我们仅更改数据注释的显示属性,是否仍需要运行添加迁移

时间:2017-08-28 23:31:00

标签: asp.net-core data-annotations

注意:此问题与Migrations - EF Core with ASP.NET Core MVC

有关

在下面我只需要在显示注释中将FY1更改为FY2。同样,在我们的各种模型上的许多地方也有类似的Display值。由于架构没有改变,我假设我不需要再次运行PM>Add-migrationPM>Update-Database commands,对吗?

**Model**
...
[Display(Name = "FY1 Total Revenue")]
public float? FY2Rev { get; set; }
...

1 个答案:

答案 0 :(得分:1)

MSDN

  

迁移功能使您可以通过更新数据库架构来更改数据模型并将更改部署到生产环境,而无需删除和重新创建数据库。

与您的问题特别相关,更改属性的Display数据注释对数据库架构没有任何影响..因为数据库为什么要关注您希望如何显示信息?您必须运行迁移的唯一原因是如果您决定更改实际属性名称。由于您更改了域模型,因此必须在数据库中更新这种类型的更改,以便收集正确的信息。

此外,更改属性type将要求您进行迁移,因为您明确更改了属性,特别是属性的类型。数据库需要知道该更改才能收集正确的数据。

我希望这会有所帮助。