ntityDAC是具有LINQ支持的Delphi的ORM。它提供了一个功能强大的框架,允许将数据库对象与Delphi类进行对象关系映射,并完全支持封装,继承,多态和其他OOP功能。为了从数据库中检索数据,LINQ被用作独立于数据库的查询引擎。此外,还有一个功能丰富的ORM建模工具 - Entity Developer,它允许您可视化地创建和编辑您的ORM模型,并自动生成此模型的Delphi实体类。
功能特点
数据库优先,模型优先和代码优先开发
有几种数据库应用程序开发方法。数据库优先 - 首先开发数据库,然后在现有数据库的基础上生成数据模型和应用程序类。Model-First - 首先在模型开发工具中开发数据模型,然后通过该模型生成数据库和应用程序类。代码优先 - 在这种情况下,应用程序类是原始数据源,在此基础上可以生成数据库,如果需要,还可以使用模型。使用EntityDAC开发应用程序时,您将能够使用所有三种方式。
带代码生成的Visual ORM模型设计器
实体开发人员允许您直观地创建和编辑ORM模型,而无需在Delphi代码中输入一行XML代码或手动描述类属性。它支持创建各种映射,如表格拆分,将实体映射到多个表格,复杂类型,继承层次等。由于使用了类似T4的模板,因此代码生成非常灵活,几乎允许任何代码生成,你甚至可以为其他编程语言创建自己的模板。
LINQ查询
在开发应用程序时使用ORM不仅必须加速应用程序本身的开发,而且还要统一应用程序代码并使应用程序独立于开发它的SQL数据库的特定和语法,从而支持您的多个数据库应用程序不费力气。因此,在EntityDAC中使用语言集成查询(LINQ)作为查询语言。使用LINQ还显着简化了对查询的编写和进一步支持,因为在这种情况下,在输入LINQ关键字,类名称,属性等时使用代码完成的Delphi引擎。同样,LINQ查询语法检查在应用程序编译阶段。
类映射
数据库表到Delphi类的对象关系映射不仅可以执行从基本TEntity类继承的类,还可以执行从TObject继承的自定义类。这种方法允许使用EntityDAC开发新的应用程序,以及简单地将ORM引入到已有的项目中。另外,支持不同的映射方法:代码映射,属性映射和XML映射。
实体和查询缓存
为了提高应用程序性能,EntityDAC允许缓存元数据,从数据库加载的所有实体,LINQ查询等等。与使用标准数据访问组件相比,这种缓存可以避免多次加载相同的数据并大大提高性能。
∨ 展开