Entity framework “表Id”字段会自动附加产生无效列名的表名
当insert EXCEPTION显示为ERRORSQLEEXCEPTION时,我有Id为列的表类别,它显示的列名称“CATEGRIESID”无效Entity framework “表Id”字段会自动附加产生无效列名的表名,entity-framework,ef-core-2.2,Entity Framework,Ef Core 2.2,当insert EXCEPTION显示为ERRORSQLEEXCEPTION时,我有Id为列的表类别,它显示的列名称“CATEGRIESID”无效 public partial class Categories { public Categories() { CategoryTabs = new HashSet<CategoryTabs>(); } public int Id { ge
public partial class Categories
{
public Categories()
{
CategoryTabs = new HashSet<CategoryTabs>();
}
public int Id { get; set; }
public string Title { get; set; }
public int? ParentId { get; set; }
public int? SeasonId { get; set; }
public int? Levels { get; set; }
public string Image { get; set; }
public string Description { get; set; }
public virtual Seasons Season { get; set; }
public List<Categories> children { get; set; }
public virtual ICollection<CategoryTabs> CategoryTabs { get; set; }
}
public partial class CategoryTabs
{
public int Id { get; set; }
public int? CategoryId { get; set; }
public int? TabId { get; set; }
public virtual Categories Category { get; set; }
public virtual Tabs Tab { get; set; }
}
公共部分类类别
{
公共类别()
{
CategoryTabs=新的HashSet();
}
公共int Id{get;set;}
公共字符串标题{get;set;}
public int?ParentId{get;set;}
公共int?季节ID{get;set;}
公共整数?级别{get;set;}
公共字符串图像{get;set;}
公共字符串说明{get;set;}
公共虚拟季节{get;set;}
公共列表子项{get;set;}
公共虚拟ICollection类别选项卡{get;set;}
}
公共部分类categorytab
{
公共int Id{get;set;}
公共int?CategoryId{get;set;}
公共int?TabId{get;set;}
公共虚拟类别类别{get;set;}
公共虚拟选项卡选项卡{get;set;}
}
CategoriesId
是外键属性/列的常规名称,该属性/列与
public List<Categories> children { get; set; }
或在模型创建时使用fluent API内部重写:
modelBuilder.Entity<Categories>()
.HasMany(e => e.children)
.WithOne()
.HasForeignKey(e => e.ParentId);
modelBuilder.Entity()
.HasMany(e=>e.children)
.WithOne()
.HasForeignKey(e=>e.ParentId);
modelBuilder.Entity<Categories>()
.HasMany(e => e.children)
.WithOne()
.HasForeignKey(e => e.ParentId);