Entity Framework 核心异常重命名专栏
Entity Framework Core exception renaming column
我有一个使用 Entity Framework Core 6.0.3 的 .Net6 WinForms 应用程序,我正在尝试从 SQL 服务器数据库读取一个简单的 table。我需要重命名该列,使其在模型中不同于在数据库中的名称。
通常(在 EF6 中,我会使用新名称在 属性 上添加一个 [Column()] 属性。但是,当我这样做时,它会引发读取数据 'Invalid column name' 的异常不管新名字是什么。
我也尝试过使用 modelBuilder 并调用 HasColumnName() 但得到了同样的错误。如果我删除 attribute/model 构建器引用,则不会发生异常,只是我仍然使用旧列名。
[Table("RefTable1")
public partial class SpecialReferenceTable
{
public Int32 Id { get; set;}
[MaxLength(300)]
[Column("NewRefColumn"] // Throws exception Column does not exist: NewRefColumn
public String? OldRefColumn {get;set;}
}
我在 Core 中重命名列时是否遗漏了什么?
[Column("Column name")] 用于数据库中列的名称 table 而您拥有的 属性 的名称就是您要更改的名称。
我有一个使用 Entity Framework Core 6.0.3 的 .Net6 WinForms 应用程序,我正在尝试从 SQL 服务器数据库读取一个简单的 table。我需要重命名该列,使其在模型中不同于在数据库中的名称。
通常(在 EF6 中,我会使用新名称在 属性 上添加一个 [Column()] 属性。但是,当我这样做时,它会引发读取数据 'Invalid column name' 的异常不管新名字是什么。
我也尝试过使用 modelBuilder 并调用 HasColumnName() 但得到了同样的错误。如果我删除 attribute/model 构建器引用,则不会发生异常,只是我仍然使用旧列名。
[Table("RefTable1")
public partial class SpecialReferenceTable
{
public Int32 Id { get; set;}
[MaxLength(300)]
[Column("NewRefColumn"] // Throws exception Column does not exist: NewRefColumn
public String? OldRefColumn {get;set;}
}
我在 Core 中重命名列时是否遗漏了什么?
[Column("Column name")] 用于数据库中列的名称 table 而您拥有的 属性 的名称就是您要更改的名称。