您的位置:首页 > 运维架构

PetShop4.0学习第一天

2006-07-30 00:44 120 查看
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数据访问层接口定义

OracleProfileDALOracle的Profile Providers 做用户状态管理
SQLProfileDALSQL Server 的Profile Providers 做用户状态管理

MembershipMembership认证和授权管理
OrderProcessor后台处理进程,处理订单队列

SQL数据库中含有四个数据库
它们分别为: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开发指南的相关知识,
如有错误请指出我将及时更正!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: