如何更改 Entity Framework CodeFirst 中的默认命名约定?

How to change default naming convention in Entity Framework CodeFirst?

在我的数据库中,外键遵循以下约定:category_idproduct_id、等等...

如何更改 EF 的默认命名约定,是否需要为每个 table 更改?

查看 t4 templates entity framework。在这些模板中,您可以定义自己的 table 名称、属性 名称等。也许这不是关于 t4 entity framework 模板的最佳来源。试试google吧。

如果要更改 FK 的默认命名约定,则需要创建一个新约定。您将在此 link 中找到很好的解释,其中解释了如何创建新约定来重命名 FK。

记得在创建后将自定义约定添加到您的上下文中:

modelBuilder.Conventions.AddBefore<System.Data.Entity.ModelConfiguration.Conven‌​tions.ForeignKeyIndexConvention>(new ForeignKeyNamingConvention());