实体框架代码列表第一个默认命名约定

rea*_*ers 9 c# entity-framework

我正在尝试查找实体框架的默认命名约定示例列表.我认为表是 例如用户...外键是User_Id但是我想看到所有开箱即用的约定列表 - IE将要调用我的对象的实体框架.<Entity>+s

我不是在寻找约定的类型 - 我得到了.我正在寻找实体框架的默认约定将命名我的数据库对象的定义/示例.为了清楚起见,我没有添加或删除任何约定.EF带有许多用于生成数据库对象的默认约定 - 我想知道EF的开箱即用默认约定将命名我的数据库对象.

我需要这个的原因是因为虽然我正在使用CodeFirst,但我将手工创建我的数据库对象,而不是让EntityFramework为我生成它(我的同事坚持这一点).因此,我需要知道我应该将我的表,列,外键命名为什么......这样实体框架将找到/映射它们,而不需要显式映射.

例如

EF Default TableName Convention
      <Entity> + 's' (e.g ***Users***) 

EF Default Foreign Key Convention
      <Entity> + 'Id' (e.g ***UserId***)   

EF Default Primary Key Convention
      ***Id***  
Run Code Online (Sandbox Code Playgroud)

我在哪里可以找到这个?

Era*_*nga 9

EF不提供检索所使用的约定集的机制.您只能删除预先配置的约定.

您可以在MSDN上找到记录的约定列表

最初,EF允许您自定义约定,但现在该部分已从API中删除.

编辑

Convention: Table Name
Default: Entity + s (e.g Users)
Run Code Online (Sandbox Code Playgroud)

PluralizingTableNameConvention

Convention: Foreign Key Relation
Default: Entity + Id (e.g UserId)
Run Code Online (Sandbox Code Playgroud)

NavigationPropertyNameForeignKeyDiscoveryConvention

Convention: Primary Key
Default: Id
Run Code Online (Sandbox Code Playgroud)

IdKeyDiscoveryConvention