我一直在使用 Linq-to-SQL 来访问我的数据库。但最近有人告诉我,这种做法并不是最好的,因为它允许混合数据访问和业务逻辑层。
我听说 Entity Framework T4 POCO 是一个解决方案,但我找不到有关它的完整信息。有没有人有更多细节可以和我分享?
提前致谢
我一直在使用 Linq-to-SQL 来访问我的数据库。但最近有人告诉我,这种做法并不是最好的,因为它允许混合数据访问和业务逻辑层。
我听说 Entity Framework T4 POCO 是一个解决方案,但我找不到有关它的完整信息。有没有人有更多细节可以和我分享?
提前致谢
POCO(普通旧 CLR 对象)的作用是它允许您创建自己的数据库表示类。然后,实体框架将您的数据库(通过配置(提示使用 edmx 文件))转换为您创建的 POCO 类。
例子:
表用户:
id | fName | lName | otherField
您可以在 C# 中使用 POCO 将其表示为具有以下属性的用户对象:
int id, string fName, string lName, var otherField.
然后,您可以在这些属性的 getter 和 setter 中插入您的业务逻辑。
注意:我建议只使用带有 edmx 文件的实体框架 icm。并将您的业务逻辑放在其他地方。创建 Web 服务时,我总是喜欢以下类的顺序:
我发现这个网站提供了一个很好的例子,说明如何将 EF4 与 POCO 类一起使用。
这描述了实体框架 4 的“代码优先”方法
请参阅:实体框架 - 生成类
有一个教程如何通过现有数据库生成 POCO 类。