PetShop4.0--转载
以下文章转载于http://www.cnblogs.com/dragonlhf/archive/2006/07/30/463110.html
petshop是微软推出的企业级程序架构随着asp.net 2.0推出了petshop4.0,正好这几天没有事,研究一下,学习一下2.0的新特性,
它包括22个项目,其中有21个类库项目和一个Web站点项目,
这些项目可以分类来理解,主要包括以下几个部分,
Web 外观层
Bill 业务逻辑层
IDAL 数据访问层接口
DALFactory 数据层的抽象工厂
SQLServerDAL SQL数据访问层
OracleDAL Oracle数据访问层
Model 业务实体层
DBUtility 数据访问组件基础类
CacheDependencyFactory 缓存依赖的工厂类
ICacheDependency 缓存依赖类接口
TableCacheDependency 缓存依赖实现类
IBLLStrategy 同步/异步处理策略接口
MessagingFactory 异时处理消息队列的抽象工厂
IMessaging 异时处理消息队列接口定义
MSMQMessaging 异时消息队列的实现
Profile Profile数据访问层
ProfileDALFactory ProfileDAL的工厂类
IProfileDAL Profile数据访问层接口定义
它们分别为:MSPetShop4 ,MSPetShop4Oreder, MSPetShop4Profile 和MSPetShop4Servers
其中MSPetShop4有如下几个表分别为CateGory Product Item Supplier和Inventory五个表
其中CateGory存储宠物类别有关信息Product存储宠物的商品目录Item存储宠物的详细信息
Supplier存储相关供应商的信息Inventory存储和每种宠物的具体数量
MSPetShop4Order 含有一下三个表其数据库模型如下
Order表存储了订单的详细通信信息OrderStatus记录了订单的状态LineItem记录了订单中的宠物数量等等详细信息
MSPetshopPrifile 的数据库模型如下
其中Profile表记录了客户的基本活动信息
Account 记录了客户的身份地址相关信息
Cart记录了用户的意向清单和购物列表
最后一个数据库就是MSPetShop4Servers它相当于Visual Studio内置的成员和角色管理的数据库
这里不在讨论
!
在这么简单的功能中建如此大的工程和复杂的数据库设计.微软肯定有自己的卖点
下面我们看看PetShop4.0中相对于3.0的新增相关技术!
在这个工程中用到了抽象工厂设计模式
我对设计模式了解的很少,明天深入学习一下抽象工厂设计模式,同时试着做一个类似多层的项目以尽快熟悉2005和了解它的新特性
本人是初学者以上内容参考了MSDN:http://www.microsoft.com/china/msdn/library/webservices/asp.net/dnbdabdasamppet4.mspx?mfr=true
http://ltp.cnblogs.com 以及asp.net2.0开发指南的相关知识,
如有错误请指出我将及时更正!
petshop是微软推出的企业级程序架构随着asp.net 2.0推出了petshop4.0,正好这几天没有事,研究一下,学习一下2.0的新特性,
它包括22个项目,其中有21个类库项目和一个Web站点项目,
这些项目可以分类来理解,主要包括以下几个部分,
Web 外观层
Bill 业务逻辑层
IDAL 数据访问层接口
DALFactory 数据层的抽象工厂
SQLServerDAL SQL数据访问层
OracleDAL Oracle数据访问层
Model 业务实体层
DBUtility 数据访问组件基础类
CacheDependencyFactory 缓存依赖的工厂类
ICacheDependency 缓存依赖类接口
TableCacheDependency 缓存依赖实现类
IBLLStrategy 同步/异步处理策略接口
MessagingFactory 异时处理消息队列的抽象工厂
IMessaging 异时处理消息队列接口定义
MSMQMessaging 异时消息队列的实现
Profile Profile数据访问层
ProfileDALFactory ProfileDAL的工厂类
IProfileDAL Profile数据访问层接口定义
OracleProfileDALOracle的Profile Providers 做用户状态管理
SQLProfileDALSQL Server 的Profile Providers 做用户状态管理
MembershipMembership认证和授权管理
OrderProcessor后台处理进程,处理订单队列
它们分别为:MSPetShop4 ,MSPetShop4Oreder, MSPetShop4Profile 和MSPetShop4Servers
其中MSPetShop4有如下几个表分别为CateGory Product Item Supplier和Inventory五个表
其中CateGory存储宠物类别有关信息Product存储宠物的商品目录Item存储宠物的详细信息
Supplier存储相关供应商的信息Inventory存储和每种宠物的具体数量
MSPetShop4Order 含有一下三个表其数据库模型如下
Order表存储了订单的详细通信信息OrderStatus记录了订单的状态LineItem记录了订单中的宠物数量等等详细信息
MSPetshopPrifile 的数据库模型如下
其中Profile表记录了客户的基本活动信息
Account 记录了客户的身份地址相关信息
Cart记录了用户的意向清单和购物列表
最后一个数据库就是MSPetShop4Servers它相当于Visual Studio内置的成员和角色管理的数据库
这里不在讨论
!
在这么简单的功能中建如此大的工程和复杂的数据库设计.微软肯定有自己的卖点
下面我们看看PetShop4.0中相对于3.0的新增相关技术!
• |
用 System.Transactions 代替服务组件。 |
• |
用强类型集合的泛型代替松散类型的 ILists。 |
• |
ASP.NET 2.0 成员身份,用于用户身份验证和授权。 |
• |
用于 Oracle 10G 的自定义 ASP.NET 2.0 成员身份提供程序。 |
• |
ASP.NET 2.0 自定义 Oracle 和 SQL Server 配置文件提供程序,用于用户状态管理。 |
• |
用母版页取代 ASP.NET Web 用户控件,从而获得一致的外观。 |
• |
ASP.NET 2.0 向导控件。 |
• |
使用 SqlCacheDependency(而非基于超时)的数据库级缓存失效。 |
• |
启用基于消息队列构建的异步 Order 处理 |
在这个工程中用到了抽象工厂设计模式
我对设计模式了解的很少,明天深入学习一下抽象工厂设计模式,同时试着做一个类似多层的项目以尽快熟悉2005和了解它的新特性
本人是初学者以上内容参考了MSDN:http://www.microsoft.com/china/msdn/library/webservices/asp.net/dnbdabdasamppet4.mspx?mfr=true
http://ltp.cnblogs.com 以及asp.net2.0开发指南的相关知识,
如有错误请指出我将及时更正!