65.9K
CodeProject 正在变化。 阅读更多。
Home

nHydrate 生成器库

starIconstarIconstarIconstarIconemptyStarIcon

4.00/5 (1投票)

2011 年 2 月 18 日

Ms-PL

3分钟阅读

viewsIcon

15062

如何使用 nHydrate 生成器库。

引言

nHydrate ORM 平台是创建数据框架、控制反转和执行其他程序化任务的有用工具。然而,在过去的一年中,添加了许多生成器,并且 UI 本身变得令人困惑。 最后一次统计,共有 14 个不同的生成器。 大多数人只使用一两个,所以其余的只是模糊了生成 UI。

为了解决这个问题,创建了一个生成器库。 现在,当您安装 nHydrate 时,不会随它一起安装任何生成器。 第一次创建或打开模型时,库对话框将弹出,允许您选择一个包进行下载。 目前,有一个实体框架数据访问层 (DAL)、一个 ADO.NET DAL 以及这些和其他组件的各种其他排列。 一个包包含一个或多个生成器。 例如,ADO.NET DAL 包中有两个程序集。 一个生成 DAL,另一个生成数据库安装/跟踪项目。 它们协同工作,根据 nHydrate 模型创建一个匹配的数据库和 API。

当然,还有更复杂的包,其中包含控制反转生成器等,但这个简单的例子演示了为什么下载包而不是单个生成器。 某些包很复杂,因为生成的项目之间存在许多依赖关系,因此将它们作为一个单元下载是有意义的。

当您第一次打开模型时,您会看到上面显示的生成器库屏幕。 第一页显示了可供安装的包。 如果您已经拥有包的所有组件并且它们是最新的,则该包将不会出现在列表中。 第二页是所有已安装生成器的列表。 一个包中可以有多个生成器。 因此,在安装包后,您的已安装列表中可能会有许多项目。 更新生成器时,您需要关闭并重新打开 Visual Studio,因为程序集被锁定在磁盘上。 如果有必要,系统会提示您这样做。 当然,下载新包时,此步骤不是必需的。

下载完一个包后,它将从显示的列表中删除。 现在您可以关闭对话框并开始生成。 在本例中,我下载了 ADO.NET 包。 创建我的模型后,我选择“工具|生成”菜单。 这将显示一个生成对话框,提示我选择要创建的项目。 请注意,此对话框中现在有两个生成器模板。 我下载的包中有两项:DAL 和数据库安装程序。 我将使用这两个项目作为我的 API,并且数据库必须保持同步。

生成后,您可以在我的解决方案中看到新项目。 当我更改我的模型并重新生成时,这两个项目将始终保持同步。 当我添加/删除/重命名表、列等时,我的 API 和数据库安装程序将始终匹配。 这就是模型驱动开发的魅力所在。

还有更多可以下载的生成器模板,您也可以编写自己的生成器,根据模型创建代码。 您可以看到这是一种定义开发模型并使用预定义模板创建代码的简单方法。 另一个好处是所有生成的项目都基于同一个模型,因此当您重新生成时,您的整个解决方案/平台都会更新并保持同步。

© . All rights reserved.