Entity framework 4 为什么实体框架将实体类名多元化并大写?

Entity framework 4 为什么实体框架将实体类名多元化并大写?,entity-framework-4,pluralize,capitalize,Entity Framework 4,Pluralize,Capitalize,为什么EntityFramework默认情况下将所有类名复数化并将第一个字母大写?这样做的好处是什么?可能是个愚蠢的问题……但只是出于好奇?NET风格的指导原则说所有类名都应该是CamelCase 但我不知道多重化,它不是单一实体对象的多重化,是吗?不过,对于集合来说是有意义的。NET风格的指导原则规定,所有类名都应该大写 但我不知道多重化,它不是单一实体对象的多重化,是吗?但是,对于集合来说是有意义的。在的部分中,它指出所有类名都应该是Pascal大小写,它定义为: “标识符中的第一个字母 每

为什么EntityFramework默认情况下将所有类名复数化并将第一个字母大写?这样做的好处是什么?可能是个愚蠢的问题……但只是出于好奇?

NET风格的指导原则说所有类名都应该是CamelCase


但我不知道多重化,它不是单一实体对象的多重化,是吗?不过,对于集合来说是有意义的。

NET风格的指导原则规定,所有类名都应该大写

但我不知道多重化,它不是单一实体对象的多重化,是吗?但是,对于集合来说是有意义的。

在的部分中,它指出所有类名都应该是Pascal大小写,它定义为:

“标识符中的第一个字母 每个字母的第一个字母是什么 后面的连接词是 大写。可以使用Pascal大小写 用于三个或三个以上的标识符 字符。例如:

“背景色”

至于多元化,我发现当您使用实体框架模型设计器的默认设置时,情况正好相反。它会将复数表名转换为其单数等效项。例如,使用Northwind数据库并使用默认设置,我发现设计师会将Products表更改为名为
Product
的类,将Categories表更改为名为
Category
的类。这是有意义的,因为对象的单个实例将是
产品
,而不是
产品

如果你得到的是相反的效果,那么我很困惑。但是,请查看Dan Rigsby的这篇文章,这篇文章可能解释了正在发生的事情。

在的部分中,它指出所有类名都应使用Pascal大小写,它定义为:

“标识符中的第一个字母 每个字母的第一个字母是什么 后面的连接词是 大写。可以使用Pascal大小写 用于三个或三个以上的标识符 字符。例如:

“背景色”

至于多元化,我发现当您使用实体框架模型设计器的默认设置时,情况正好相反。它会将复数表名转换为其单数等效项。例如,使用Northwind数据库并使用默认设置,我发现设计师会将Products表更改为名为
Product
的类,将Categories表更改为名为
Category
的类。这是有意义的,因为对象的单个实例将是
产品
,而不是
产品


如果你得到的是相反的效果,那么我很困惑。但是,请看这篇由Dan Rigsby撰写的文章,这篇文章也许可以解释发生了什么。

您应该将类单数化,将集合复数化。例如,这是由ef完成的单数化和复数化

var customer=新客户{}//单数类 db.Customers.AddObject(客户);对象集是多元的

customer.Orders.Add(新订单{});订单导航属性是多元的


要了解更多,你还可以阅读我书中的7-6食谱。

你应该将一个类单数化,将一个集合复数化。例如,这是由ef完成的单数化和复数化

var customer=新客户{}//单数类 db.Customers.AddObject(客户);对象集是多元的

customer.Orders.Add(新订单{});订单导航属性是多元的


要了解更多信息,您还可以阅读我书中的7-6配方。

可以关闭多元化。这是默认设置,但您可以根据需要调整设置。可以关闭多元化。这是默认设置,但您可以根据需要调整设置。