.NET Petshop详解(四):petshop三层结构之PresentationTier

** .NET Petshop ** ** 详解(四): ** ** petshop ** ** 三层结构之 ** ** PresentationTier **


在前面的文章中,我们已经就 .NET Petshop 的数据层和中间的业务逻辑层作了说明,接下来的文章中,我们将就数据展示层作探究。与前面的两层有着很大的差别的是, .NET Petshop 的展示层用了很多 Microsoft 最新的 web Forms 技术即 Asp.NET 。因此,在解说展示层之前,我想就 Asp.NET 在 .NET Petshop 的开发中使用到的非常重要的特性做一些说明 , 以示区别:

(1) Asp.NET 代码不再是解释型代码,可以经由 JIT 编译器编译后运行,并且引入了很好的页面缓冲机制。

(2) ASP.Net 的配置模型引入了基于 XML 文件的 “ 零安装 ” 配置模型。零安装的含义是只需将配置文件 Web.config ,应用程序拷贝到系统指定的目录下即可,需要更改时直接在文件里更改并保存。

(3) 安全管理 ASP.Net 提供了比传统 ASP 更强大可靠的安全管理。 Asp.NET 提供了三种验证方式以及两种类型的授权服务。

(4) 支持代码和页面内容的分离。回想以前编写 Asp 程序的时候的问题:代码逻辑混乱,难于管理。

(5) 提供了更好的状态管理,包括会话状态的管理和视图状态的管理。

(6) 大量的 ASP.NET 服务器端控件和对用户控件的开发的支持。

.NET Petshop 充分的使用了服务器控件技术和会话状态管理。展示层的交互界面均采用 aspx 页面,后端有分离的逻辑代码。 .NET Petshop 共有 19 个 aspx 页面和代码逻辑。在这里一一里列出,并说明设置参数和其作用。

** ASP.NET Web 页面 **

|

** EnableSessionState **

|

** EnableViewState **

|

** 备注说明 **

---|---|---|---

Cart.aspx

|

true

|

true

|

购物清单

Category.aspx

|

True

|

false

|

产品分类的列表

CheckOut.aspx

|

Readonly

|

false

|

订单确认

CreateNewAccount.aspx

|

False

|

true

|

创建新帐号

Default.aspx

|

False

|

false

|

系统首页面

EditAccount.aspx

|

False

|

true

|

账号编辑

Error.aspx

|

False

|

false

|

错误处理

Help.aspx

|

False

|

false

|

帮助

OrderAddressConfirm.aspx

|

readonly

|

false

|

订单地址确认

OrderBilling.aspx

|

True

|

true

|

订单信息

OrderProcess.aspx

|

readonly

|

false

|

下订单

OrderShipping.aspx

|

True

|

true

|

订单地址和姓名

Product.aspx

|

False

|

false

|

产品列表

ProductDetails.aspx

|

false

|

false

|

产品详细信息

Search.aspx

|

false

|

false

|

搜索

SignIn.aspx

|

false

|

false

|

帐号登陆

SignOut.aspx

|

true

|

false

|

帐号退出

ValidateAccount.aspx

|

false

|

false

|

帐号创建确认

VerifySignIn.aspx

|

false

|

false

|

账号登陆确认

.NET Petshop 使用了很多用户控件,这些控件位于 web/Inc 目录下面。表格 2 对用户控件作出说明:

** User Controls **

|

** EnableViewState **

|

** 备注说明 **

---|---|---

ControlAddress

|

true

|

详细地址列表

ControlBanner

<TD style="BORDER-RIGHT: #d4d0c8; PADDING-RIGHT: 5.4pt; BORDER-TOP: #d4d0c8; PADDING-LEFT

Published At
Categories with Web编程
Tagged with
comments powered by Disqus