gpt4 book ai didi

c# - EF6 db 首先对包含下划线的表名进行复数/单数化

转载 作者:太空宇宙 更新时间:2023-11-03 17:06:25 25 4
gpt4 key购买 nike

我正在尝试使用 Visual Studio 2015 社区版中提供的向导使用 Entity Framework 6 创建一个新的实体数据模型(首先是数据库)。我所有的表名都是复数形式的(例如 mn_Bills)。我选择了“复数化或单数化生成的对象名称”,但这不会单数化对象名称(即表 mn_Bills 的生成类是 mn_Bills.cs 文件中的 mn_Bills)。

我在模型浏览器中修改了“名称”和“实体集名称”,这只解决了部分问题。生成的类是单数的,这很好,但是N对1关联的外键关联是复数的:

public partial class mn_Bill
{
...
public virtual mn_Clearing mn_Clearings { get; set; }
}

您知道这个问题是否有任何解决方法(除了更改表名之外)吗?

最佳答案

我在下划线表名方面遇到了类似的问题,PluralizationService 似乎不支持下划线。

答案似乎是用您自己的一些代码覆盖默认服务。

我没有为数据库优先的 edmx 解决方案执行此操作,因为我使用的是替代代码生成引擎 - 但这可能会在代码生成步骤中被覆盖。

在这里查看这个答案:

Entity Framework EDMX - Entity Pluralization Fix

https://blogs.msdn.microsoft.com/efdesign/2008/12/01/pluralization/

关于c# - EF6 db 首先对包含下划线的表名进行复数/单数化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37024248/

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