Frameworks 实体框架类命名约定v旧式数据库命名约定

Frameworks 实体框架类命名约定v旧式数据库命名约定,frameworks,ado.net,entity,Frameworks,Ado.net,Entity,我正在考虑在我的下一个项目中使用某种数据生成技术,并对使用Visual Studio 2010的ADO.NET实体框架感到好奇。我是实体框架的新手,所以请温柔一点 我对类命名的偏好一直是驼峰式的。例如CustomerSite。 我对数据库命名的偏好一直是小写加下划线。例如,客户网站。在过去的十年中,我与许多公司的数据库管理员一起工作,这似乎是常态,这就是我采用这种技术的原因 使用实体框架来生成我的类,它总是使用表名,因此我的类名成为customer\u site。我讨厌这个 我正在通过一个原型进

我正在考虑在我的下一个项目中使用某种数据生成技术,并对使用Visual Studio 2010的ADO.NET实体框架感到好奇。我是实体框架的新手,所以请温柔一点

我对类命名的偏好一直是驼峰式的。例如CustomerSite。 我对数据库命名的偏好一直是小写加下划线。例如,客户网站。在过去的十年中,我与许多公司的数据库管理员一起工作,这似乎是常态,这就是我采用这种技术的原因

使用实体框架来生成我的类,它总是使用表名,因此我的类名成为customer\u site。我讨厌这个

我正在通过一个原型进行中间编码,其中数据库有许多表(比如说大约40个)。目前,我一直在研究自己的数据模型,但我厌倦了手工编码字段和属性。它是一个VB.NET WinForm应用程序,带有标准CRUD,用于顶部有各种各样的铃铛和口哨的实体

是否可以让实体框架类生成器使用我想要的命名约定?或者我需要更改我的数据库命名约定吗?或者只使用实体框架类生成器给我的-customer_site作为类名

有什么想法吗

谢谢

Andez

如中所述,您可以设置实体和表之间的映射,这使您能够拥有不同的表名和类名。您可以通过重写
DbContext.OnModelCreating
,或使用
TableAttribute
来实现这一点


我想说,如果您愿意这样做,您应该为您的表和实体遵循不同的命名约定。

您是先使用EF代码还是先使用模型?好的,谢谢您。出于好奇,如果我先创建了40多个表,即customer_站点,我想除了在designer中编辑类名之外,没有其他简单的方法可以更改类名以适应需要?我的想法对吗?我想是的。您也不会使用“代码优先”: