摘要:多对多 实体关系 当一个实体类型的任意数量的实体与相同或另一个实体类型的任意数量的实体相关联时,将使用多对多关系。 例如,Post 可以有多个关联的 Tags,并且每个 Tag 可以与任意数量的 Posts 关联。
阅读全文
摘要:一对一 实体关系 当一个实体与最多一个其他实体关联时,将使用一对一关系。 例如,Blog 有一个 BlogHeader,并且 BlogHeader 属于单个 Blog。 必需的一对一 // Principal (parent) public class Blog { public int Id {
阅读全文
摘要:一、一对多关系 当单个实体与任意数量的其他实体关联时,将使用一对多关系。 必需的一对多 //主体实体 Principal (parent) public class Blog {//博客,一个博客有多个帖子 public int Id { get; set; } public ICollection
阅读全文
摘要:添加迁移时显示错误: Both relationships between 'WorkCenter.Factory' and 'Factory' and between 'WorkCenter' and 'Factory.WorkCenters' could use {'FactoryId'} as
阅读全文
摘要:使用多个上下文类型 创建多个迁移集的一种方法是对每个提供程序使用一个 DbContext 类型 class SqliteBlogContext : BlogContext { protected override void OnConfiguring(DbContextOptionsBuilder
阅读全文
摘要:注意:EFCore 在执行 Remove-Migration 取消最后一次迁移生成的文件时,先不要更改Config配置文件,否则可能无法执行取消操作 当主表和明细表是主从关系时,默认生成时为级联删除,不需要在配置文件中声明 public class ProductionPlanDetailConfi
阅读全文
摘要:外键名称不是标准表名+Id builder.HasOne(m => m.SaleOrganization).WithMany().HasForeignKey(m => m.SaleOrganizationId);
阅读全文
摘要:SQL 脚本迁移 添加迁移后,需要将其部署并应用到数据库。 有多种策略可用于执行此操作,其中一些更适合生产环境,而另一些更适合开发生命周期。 备注 无论部署策略是什么,都应检查生成的迁移并进行测试,然后再将其应用于生产数据库。 迁移可能会在意图是对列进行重命名时删除该列,或者在应用于数据库时因各种原
阅读全文
摘要:列重命名 需要自定义迁移的一个重要示例就是重命名属性时。 例如,如果你将属性从 Name 重命名为 FullName,EF Core 将生成以下迁移: migrationBuilder.DropColumn( name: "Name", table: "Customers"); migrationB
阅读全文
摘要:必需的一对多 可选的一对多 具有阴影外键的必需的一对多 具有阴影外键的可选一对多 当单个实体与任意数量的其他实体关联时,将使用一对多关系。 例如,Blog 可以有多个关联的 Posts,但每个 Post 都只与一个 Blog 相关联。 必需的一对多 // Principal (parent) pub
阅读全文
摘要:public class Post {//文章 public string Title { get; set; } public string Content { get; set; } public DateOnly PublishedOn { get; set; } public bool Ar
阅读全文
摘要:一对多关系 - EF Core | Microsoft Learn
阅读全文
摘要:No suitable constructor was found for entity type 'Customer'. The following constructors had parameters that could not be bound to properties of the e
阅读全文