Duwamish 7.0 的架构
Duwamish 7.0 是 VS.NET 中微软提供的一个企业级的示例,最近在学设计方面的东西,所以有时
间边看边学这个示例。做了一些笔记,和大家一起讨论。
学习 Duwamish 7.0,首先要看的当然是它的一个整体的结构式,在 MSDN 自带的帮助文件中,我
们看到了它的一个整体的结构。Duwamish 7.0 分为四层,分别为:
Web 层
相当于是用户界面层,直接与用户交互的 web 窗体,从源码中我们可以看到,它有以下的一些界面
页:
·book.aspx:用以显示图书的详细信息的页面。
·default.aspx:默认页,显示当天的精选书。
·categories.aspx:用于分类显示图书的页面,它由两部分组成,上半部分显示当天推荐的该分类
的图书信息,下半部分显示该分类的。
errorpage.aspx:是一个静态页面,显示一成不变的错误信息。
·searchresults.aspx:显示搜索结果页面,用了一个 datalist 控件显示搜索的结果;不支持分页。
·shoppingcart.aspx:购物车页,用于填写购书的订单,用 datagrid 控件操作,支持批量修改和
更新。不支持删除,设为零时能删除;不用单击 update 按钮就自动更新了;update 按钮用于修改订购
书的数量后刷新价格。
·viewsource.aspx:既然是示例,当然可以看源代码了,这一页是专门用于查看源代码的。
下面的页面是用于管理用户及用户订单系统,微软专门把它放在 secure 文件夹下:
·account.aspx:新客户注册页及客户修改个人信息页。
·checkout.aspx:确认购买页面,填写收货人的详细地址和联系方式,填入信用卡的信息,列出购
买的清单及总的费用信息。
·order.aspx:显示用户的订单信息,以供用户打印该订单。
在 Duwamish 7.0 中,大量的运用了用户控件,各个用户控件的功能不一,用户控件统一放在
modules 文件夹下:
·accountmodule.ascx:对应于 account.aspx 页面,新客户注册页及客户修改个人信息。
·bannermodule.ascx:每一页都包含有该用户控件,它定义的页面的头部信息,在页面中看到的
头上的哪片黑色的区域就是它了,包含一个图片,三个按钮。
·categoriesmodule.ascx:每一页都包含有该用户控件,它显示了书籍的分类信息。在页面的左边
的”Browse Categories”文字开始到” Behind The Scenes”文字结束就是该控件的界面内容了。
·checkoutmodule.ascx:对应于 checkout.aspx 页,因为 checkout.aspx 页是一个按步骤操作
的页(用 panel 控件控制),每走一页 checkoutmodule.ascx 控件中的箭头就往前走或往后退一格。在
父页面中通过控制 checkoutmodule.ascx 控件的 Stage 属性来控制。
·dailypickmodule.ascx:用于显示推荐的图书信息,在 default.aspx 页和 categories.aspx 页中
用到。