gpt4 book ai didi

c# - Entity Framework 代码优先默认命名约定列表

转载 作者:太空狗 更新时间:2023-10-29 17:48:28 25 4
gpt4 key购买 nike

我正在尝试查找 Entity Framework 默认命名约定示例列表。我收集到表是 <Entity>+s例如用户...外键是 User_Id 但我想查看所有开箱即用约定的列表 - 即什么 Entity Framework 将调用我的对象。

我不是在寻找约定的类型 - 我明白了。我正在寻找 Entity Framework 的默认约定 将命名我的数据库对象的定义/示例。明确地说,我没有添加或删除任何约定。 EF 附带了许多用于生成数据库对象的默认约定 - 我想知道 EF 的哪些开箱即用的默认约定将命名我的数据库对象。

我之所以需要这个是因为虽然我使用的是 CodeFirst,但我将手动创建我的数据库对象而不是让 EntityFramework 为我生成它(我的同事坚持这样做)。因此,我需要知道我应该如何命名我的表、列、外键……以便 Entity Framework 无需显式映射即可找到/映射它们。

例如

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***

我在哪里可以找到这个?

最佳答案

EF 不提供检索使用的约定集的机制。你只能 remove预先配置的约定。

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

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

编辑

Convention: Table Name
Default: Entity + s (e.g Users)

PluralizingTableNameConvention

Convention: Foreign Key Relation
Default: Entity + Id (e.g UserId)

NavigationPropertyNameForeignKeyDiscoveryConvention

Convention: Primary Key
Default: Id

IdKeyDiscoveryConvention

关于c# - Entity Framework 代码优先默认命名约定列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10512900/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com