在线中文-在线在线ccc66-在线永久免费观看的毛片-在线永久免费观看的a站视频-久久精品最新免费国产成人-久久精品综合一区二区三区


曙海教育集團論壇開發(fā)語言培訓專區(qū)Microsoft.NET Framework → Microsoft.NET PetShop4架構(gòu)與技術(shù)分析


  共有8782人關(guān)注過本帖樹形打印

主題:Microsoft.NET PetShop4架構(gòu)與技術(shù)分析

美女呀,離線,留言給我吧!
wangxinxin
  1樓 個性首頁 | 博客 | 信息 | 搜索 | 郵箱 | 主頁 | UC


加好友 發(fā)短信
等級:青蜂俠 帖子:1393 積分:14038 威望:0 精華:0 注冊:2010-11-12 11:08:23
Microsoft.NET PetShop4架構(gòu)與技術(shù)分析  發(fā)帖心情 Post By:2010-12-15 11:21:46

1.項目概述與架構(gòu)分析
微軟剛推出了基于ASP.NET 2.0下的Pet Shop 4, 該版本有了一個全新的用戶界面。是研究ASP.NET 2.0的好范例啊,大家都知道,一直以來,在.NET和Java之間爭論不休,到底使用哪個平臺開發(fā)的企業(yè)級應用性能最好、結(jié)構(gòu)最優(yōu)、生產(chǎn)力最高。為了用事實說話,通過對項目各方面的性能評估進而在比較.NET和Java的高下。用戶做比較的這個項目就是Petshop。正因為Petshop肩負著上面所說的重任,各方面必須是最優(yōu)的,架構(gòu)設計應該是經(jīng)過慎重考慮的。所以其一經(jīng)推出,便成為了開發(fā)者、架構(gòu)師等人學習、研究的典范。

日前微軟推出了基于.NET Framework 2.0開發(fā)的Petshop 4。新的Petshop4實現(xiàn)了與Petshop 3相同甚至更多的特性,由于采用了Master Pages,Membership,以及Profile,SqlCacheDependency,但是代碼量卻減少了四分之一。同時,在事務、數(shù)據(jù)緩存、安全方面使用了.NET 2.0附帶的特性,構(gòu)建了一個靈活的最佳實踐的應用程序。


他們利用了Project Conversion Wizard把項目從ASP.NET 1.1移植到了ASP.NET 2.0,然后做了以下改動:

1.用System.Transactions代替了原來的Serviced Components提供的事務功能

代碼實現(xiàn):PetShop.BLL.OrderSynchronous 的 public void Insert(PetShop.Model.OrderInfo order)。

2.用強類型的范型集合代替了原來的弱類型集合

        public IList<ProductInfo> GetProductsByCategory(string category)

        {

            // Return new if the string is empty

            if (string.IsNullOrEmpty(category))

                return new List<ProductInfo>();

 

            // Run a search against the data store

            return dal.GetProductsByCategory(category);

        }

3.采用ASP.NET 2.0 Membership來做認證和授權(quán)

4.創(chuàng)建了針對Oracle 10g的Custom  ASP.NET 2.0 Membership Provider

5.利用ASP.NET 2.0的Custom Oracle 和 SQL Server Profile Providers 做用戶狀態(tài)管理,包括購物車等

6.采用了Master Pages,取代了原來的用戶控件,來實現(xiàn)統(tǒng)一的界面效果

7.使用了ASP.NET 2.0 Wizard控件實現(xiàn)check-out

8.使用了SqlCacheDependency來實現(xiàn)數(shù)據(jù)庫層次的緩存更新(cache invalidation)功能

9.使用了消息隊列來實現(xiàn)異時訂單處理。

 

2.整體架構(gòu):


數(shù)據(jù)庫:(暫略)

項目列表:從整體可以看出,Pet Shop 4的項目體系已經(jīng)很龐大,考慮的方面也較3.0更全面復雜。


序號

項目名稱

描述

1

BLL

業(yè)務邏輯層

2

CacheDependencyFactory

緩存依賴類的工廠類

3

WEB

表示層

4

DALFactory

數(shù)據(jù)層的抽象工廠

5

DBUtility

數(shù)據(jù)訪問類組件

6

IBLLStrategy

同步/異步策略接口

7

ICacheDependency

緩存依賴類接口

8

IDAL

數(shù)據(jù)訪問層接口定義

9

IMessaging

異時處理消息隊列接口定義

10

IProfileDAL

Profile的數(shù)據(jù)訪問層接口定義

11

Membership

Membership認證和授權(quán)管理

12

MessagingFactory

異時處理消息隊列的抽象工廠

13

Model

業(yè)務實體

14

MSMQMessaging

異時處理消息隊列的實現(xiàn)

15

OracleDAL

Oracle數(shù)據(jù)訪問層

16

OracleProfileDAL

Oracle的Profile Providers

做用戶狀態(tài)管理,包括購物車等

17

OrderProcessor

后臺處理進程,處理訂單隊列

18

Profile

Profile的數(shù)據(jù)訪問層

19

ProfileDALFactory

ProfileDAL的工廠類(反射創(chuàng)建ProfileDAL)

20

SQLProfileDAL

SQL Server 的Profile Providers

做用戶狀態(tài)管理,包括購物車等

21

SQLServerDAL

SQLServer數(shù)據(jù)訪問層

22

TableCacheDependency

緩存依賴實現(xiàn)類


項目分解

由于整體已經(jīng)有22個項目,所以,對于初學者一看就暈了,所以,我做了分解,可以大體上分幾塊去理解。

序號

項目名稱

描述

1

WEB

表示層

2

Model

業(yè)務實體

3

BLL

業(yè)務邏輯層

4

DALFactory

數(shù)據(jù)層的抽象工廠

5

IDAL

數(shù)據(jù)訪問層接口定義

6

SQLServerDAL

SQLServer數(shù)據(jù)訪問層

7

OracleDAL

Oracle數(shù)據(jù)訪問層

8

DBUtility

數(shù)據(jù)庫訪問組件基礎類

9

CacheDependencyFactory

緩存依賴類的工廠類

10

ICacheDependency

緩存依賴類接口

11

TableCacheDependency

緩存依賴實現(xiàn)類

12

IBLLStrategy

同步/異步處理策略接口(實現(xiàn)在bll根據(jù)配置反射選擇)

13

MessagingFactory

異時處理消息隊列的抽象工廠

14

IMessaging

異時處理消息隊列接口定義

15

MSMQMessaging

異時處理消息隊列的實現(xiàn)

16

Profile

Profile的數(shù)據(jù)訪問層

17

ProfileDALFactory

ProfileDAL的工廠類(反射創(chuàng)建ProfileDAL)

18

IProfileDAL

Profile的數(shù)據(jù)訪問層接口定義

19

OracleProfileDAL

Oracle的Profile Providers

做用戶狀態(tài)管理

20

SQLProfileDAL

SQL Server 的Profile Providers

做用戶狀態(tài)管理

21

Membership

Membership認證和授權(quán)管理

22

OrderProcessor

后臺處理進程,處理訂單隊列

 



3.Petshop 4中的設計模式

工廠模式:

首當其沖的就是工廠模式,很容易就可以看出來,也是應用最多的。

DALFactory:數(shù)據(jù)訪問層的抽象工廠(決定創(chuàng)建哪種數(shù)據(jù)庫類型的數(shù)據(jù)訪問層。可以選擇:SQLServer,Oracle)

CacheDependencyFactory:緩存依賴類的工廠類。(創(chuàng)建具體表的緩存依賴)

MessagingFactory :異時處理消息隊列的抽象工廠(反射創(chuàng)建具體的異時處理類)

ProfileDALFactory:ProfileDAL的工廠類(反射選擇創(chuàng)建Oracle 和SQL Server的 ProfileDAL)


支持(0中立(0反對(0單帖管理 | 引用 | 回復 回到頂部

返回版面帖子列表

Microsoft.NET PetShop4架構(gòu)與技術(shù)分析








簽名
主站蜘蛛池模板: 国产成人精品一区二区三区 | 七月丁香色婷婷综合激情 | 亚洲国产成人精品91久久久 | 自拍 亚洲 欧美 | 中文字幕日韩高清 | 欧洲色综合| 欧美日韩视频在线观看高清免费网站 | 波多野结衣在观看播放 | 亚洲1页 | av在线亚洲男人的天堂 | 国产人成精品 | 一区二区精品久久 | 高清欧美不卡一区二区三区 | 婷婷激情小说网 | 日本国产在线观看 | 色婷婷激情五月综合 | 欧美一区亚洲二区 | 六月丁香深爱六月综合激情 | 欧美黑人在线 | 自拍三区 | 亚洲视频中文字幕在线观看 | 欧美视频第一页 | 四虎4hu亚洲精品 | 丁香六月色婷婷 | 羞羞视频免费网站在线 | 亚洲一级片在线播放 | 国产精品久久久久久久人热 | 国产羞羞羞视频在线观看 | 日本不卡不码高清免费观看 | 男女精品视频 | 成人精品区 | 玖玖影视| 在线国产高清 | 羞羞动漫网站入口 | 亚洲欧美视频在线观看 | 亚洲综合视频在线观看 | 最近免费中文完整在线观看视频 | 亚洲国内精品自在线影视 | 在线观看网站国产 | 久久精品小视频 | 欧美一级久久久久久久大 |