如何设计并实现Asp.Net应用的通用数据存取层?
如何设计并实现Asp.Net应用的通用数据存取层?
设计、实现一个 Asp.Net 应用的通用数据存取层(二)
翻译:nxyc_twz@163.com
1.2 原型安装
在我们继续下一步之前,我建议您安装示例程序 DAPrototype, 因为以下的步骤中会多次涉及它。解决方案 DAPrototype.sln 由下面的类库组成 (可以查看小节3).
集合 |
描述 |
BLT |
商业逻辑层 |
DAT |
数据存取层 |
HttpTraceModule |
在表述层跟踪错误
|
TDS |
在层与层之间进行数据传输的数据集定义 |
小节3
请按下面的这些说明来安装示例程序:
- 下载文件 DAPrototype.zip
- 创建一个新的 ASP.NET C# 网络应用程序 DAPrototype,然后用你刚下载的文件替换掉它.
-
打开并执行 SQL 脚本 DAPrototype/SqlScript/DAPrototype.sql, 从而在我们的数据层(DT)的数据库中创建存储过程.
-
为了创建表述层、商业层以及数据存取层的事件日志,请单独打开 C# 项目 DAProtype/ELCreator/ELCreator.csproj (可以参考 1.4). 请调整计算机名称并执行它。出于对安全的考虑,我们不能将这部分功能整合到我们的web应用程序中。 Window 用户 ASPNET 没有足够的权限来创建 windows 资源.
-
调整Adjust configuration values for the keys in the DAPrototype/Web.config中keys的配置值,特别是 localConnection, daMachine, blMachine 以及 plMachine (参看 小节 4).
<appSettings> <!-- Database Connection --> <add key="LocalConnection" value="server=localhost;database=Northwind;uid=sa;pwd=moses; pooling=true; Max Pool Size=100;"/> <!-- Event Log for Data Access Tier --> <addkey="daMachine"value="ABRAHAM"/> <addkey="daLog"value="DALog"/> <addkey="daSource"value="DASource"/> <!-- Event Log for Business Tier --> <addkey="blMachine"value="ABRAHAM"/> <addkey="blLog"value="BLLog"/> <addkey="blSource"value="BLSource"/> <!-- Event Log for Prsentation Tier --> <addkey="plMachine"value="ABRAHAM"/> <addkey="plLog"value="PLLog"/> <addkey="plSource"value="PLSource"/> <!--- application constants--> <addkey="consumeTaxRate"value="0.16"/> </appSettings>
小节 4
- 设置 DAPrototype/SerchCustomOrders.aspx 面为首页.
我希望现在你可以运行我们的应用程序。
1.3 定义数据集
DataSet 是个内存型数据库,依赖于关于数据库模型。 Datasets 用来实现接口层的数据通信。它有数据表,外键约束,表关系触发器。 DataSets 是完全自主的,因为它们必须于数据源。而且, DataSets 也可以处理结构化数据,比如 XML DOM等。让我们看个示例(参看小节 5). 下面的 XML 文件列出出了德国的一些州及政府。
<?xmlversion=”1.0”encoding=”utf-8”?>
<Germany>
<StateName=”Bayern”>
<CityName=”Munic”/>
<CityName=”Nürenburg”/>
</State>
<StateName=”NRW”>
<CityName=”Düsseldorf”/>
<CityName=”Bonn”/>
</State>
</Germany>
XML 文件
相应数据庥的 XSD 文件