999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

WCF軟件協(xié)同開發(fā)平臺的研究與實(shí)現(xiàn)

2013-12-31 00:00:00沈娟娟
科技創(chuàng)新與應(yīng)用 2013年10期

摘 要:WCF是微軟基于SOA推出的.net平臺下的框架產(chǎn)品,是對于.Net Remoting,Enterprise Service,WSE,Web Services等技術(shù)的整合。文章闡述了WCF多層服務(wù)架構(gòu)及WCF流傳輸技術(shù),并將其應(yīng)用于軟件協(xié)同開發(fā)平臺的構(gòu)建。

關(guān)鍵詞:WCF;流傳輸;軟件協(xié)同開發(fā)

1 引言

現(xiàn)今,在軟件開發(fā)項(xiàng)目過程中,需求分析員、程序員等各工作人員間需要不斷溝通交流,以期按要求完成項(xiàng)目。目前,很多企業(yè)的軟件項(xiàng)目開發(fā)各成員間通常用E-mail、msn、ftp、OA系統(tǒng),或是會議來實(shí)現(xiàn)交流。這些傳統(tǒng)的交流模式效率相對較低,無法實(shí)現(xiàn)團(tuán)隊(duì)內(nèi)部之間的實(shí)時交流,容易造成工作脫節(jié)、延誤、錯辦等情況。基于WCF的軟件協(xié)同開發(fā)平臺可有效解決上述問題,縮短開發(fā)時間,提高團(tuán)隊(duì)協(xié)作能力,實(shí)現(xiàn)最大程度資源共享。

WCF(Windows Communication Foundation)是微軟基于SOA(Service-Oriented Architecture)推出的.net平臺下的框架產(chǎn)品,是對于.Net Remoting,Enterprise Service,WSE,Web Services等技術(shù)的整合。使用該框架,開發(fā)人員構(gòu)建跨平臺、安全、可靠和支持事務(wù)處理的企業(yè)級互聯(lián)應(yīng)用解決方案。因此,將WCF技術(shù)應(yīng)用于軟件協(xié)同開發(fā)系統(tǒng),從而使得該系統(tǒng)能夠可以被任何應(yīng)用系統(tǒng)、在任何地方進(jìn)行訪問,提高協(xié)同工作效率。

2 基于WCF的面向服務(wù)的多層結(jié)構(gòu)

本系統(tǒng)結(jié)構(gòu)分成客戶層、WCF服務(wù)層、業(yè)務(wù)層、數(shù)據(jù)層。這種開發(fā)模型在客戶層和業(yè)務(wù)層之間增加了服務(wù)層,避免讓業(yè)務(wù)層暴露于客戶層中,如圖1所示。

客戶層: 在本系統(tǒng)中,客戶層采用Windows窗體展示給用戶;在后臺代碼中,通過服務(wù)端與服務(wù)進(jìn)行通訊,具體而言,就是通過訪問WCF服務(wù)的接口,將用戶提交的數(shù)據(jù)發(fā)送給數(shù)據(jù)庫服務(wù)器,并獲取需要的數(shù)據(jù)。

WCF服務(wù)層:服務(wù)層包含一個接口層,定義了接口的方法及安全規(guī)則,包含了WCF服務(wù)契約的具體內(nèi)容。介于用戶界面層和業(yè)務(wù)邏輯層之間,通過服務(wù)層封裝后,再暴露給用戶界面層,當(dāng)業(yè)務(wù)邏輯層有變化時,不會直接影響用戶界面層。使得該服務(wù)可以提供給任何遠(yuǎn)程或本地用戶使用。在系統(tǒng)的設(shè)計過程中為綁定留有接口,為今后模塊變更和業(yè)務(wù)擴(kuò)展提供方便。

業(yè)務(wù)邏輯層:是WCF服務(wù)層接口的具體實(shí)現(xiàn),也就是說,實(shí)現(xiàn)了系統(tǒng)分析提出的業(yè)務(wù)邏輯內(nèi)容。業(yè)務(wù)邏輯層需要從數(shù)據(jù)訪問層得到數(shù)據(jù)庫中的對應(yīng)信息,從而與數(shù)據(jù)庫交互。

數(shù)據(jù)訪問層:數(shù)據(jù)訪問層是業(yè)務(wù)組件和底層數(shù)據(jù)的一個數(shù)據(jù)交互平臺,主要完成數(shù)據(jù)庫操作。數(shù)據(jù)訪問層向業(yè)務(wù)邏輯層提供了統(tǒng)一的數(shù)據(jù)庫訪問接口,業(yè)務(wù)邏輯層調(diào)用該接口訪問數(shù)據(jù)庫。在本系統(tǒng)中,數(shù)據(jù)訪問層使用ADO.NET技術(shù)。

數(shù)據(jù)庫:選用微軟開發(fā)的SQL Server 2005。

3 WCF的流傳輸技術(shù)

通常情況下,客戶端和服務(wù)端進(jìn)行交互、傳遞消息都放到接收端的緩存里,待接收完畢后再進(jìn)行處理。在這種消息處理模式下,當(dāng)客戶端調(diào)用服務(wù)時,要阻塞客戶單進(jìn)程,直到消息發(fā)送完畢,服務(wù)端才開始處理數(shù)據(jù),然后返回處理結(jié)果給客戶端,待客戶端接收完畢,才解除阻塞。當(dāng)消息數(shù)據(jù)很大,如多媒體或圖片,則每次阻塞時間長,效率低下。為了解決這樣的問題,WCF允許接收端通過通道接受消息的同時,啟動對消息數(shù)據(jù)的處理,這樣的過程稱為流傳輸模式。

在WCF中啟用流傳輸模式,先進(jìn)行OperationContract設(shè)置,其必須滿足兩個要求:

(1)保留要進(jìn)行流處理的數(shù)據(jù)的參數(shù)必須是方法中的唯一參數(shù)。例如,如果要對輸入消息進(jìn)行流處理,則該操作必須正好具有一個輸入?yún)?shù)。同樣,如果要對輸出消息進(jìn)行流處理,則該操作必須正好具有一個輸出參數(shù)或一個返回值。

(2)參數(shù)和返回值的類型中至少有一個必須是 Stream, Message 或 IXmlSerializable。

其次,必須在綁定上啟用流處理。需要說明的是,流傳輸模式在特定的綁定協(xié)議中才使用,目前支持的綁定只有BasicHttpBinding,NetTcpBinding以及NetNamedPipeBinding。

4 系統(tǒng)的實(shí)現(xiàn)

現(xiàn)以文檔管理功能模塊為例,研究WCF服務(wù)架構(gòu)和流傳輸技術(shù)解決大數(shù)據(jù)量傳輸問題在軟件協(xié)同開發(fā)系統(tǒng)中的應(yīng)用及具體實(shí)現(xiàn)。

4.1 服務(wù)的創(chuàng)建

IFileInterface為文檔管理模塊客戶端和服務(wù)端進(jìn)行服務(wù)調(diào)用的WCF服務(wù)接口文件(即服務(wù)契約),其本質(zhì)上是對業(yè)務(wù)邏輯的封裝,客戶端可通過該接口進(jìn)行服務(wù)調(diào)用。該服務(wù)契約中定義了兩個契約:1、用于上傳。2、用于下載。部分代碼如下:

namespace Contracts

{

[ServiceContract] //定義服務(wù)契約

public interface IFileInterface

{

[OperationContract(Action = \"UploadFile\")]

void UploadFile(FileUploadMessage request);

[OperationContract()]

void Test(string msg);

[OperationContract]

Stream GetFile(string filePath, string fileName);

}

[MessageContract] //定義文檔上傳的消息契約

public class FileUploadMessage

{

……

}

[MessageContract] //定義文檔下載的消息契約

public class FileGetMessage

{

……

}

}

4.2 服務(wù)的實(shí)現(xiàn)

在服務(wù)契約(接口)定義后,接下來就是實(shí)現(xiàn)該契約即服務(wù)的實(shí)現(xiàn)。業(yè)務(wù)邏輯層中提供了WCF服務(wù)的實(shí)現(xiàn)文件。WCF服務(wù)定義在相應(yīng)的Service項(xiàng)目中,F(xiàn)ilesave繼承了IFileInterface接口,提供WCF服務(wù)的具體內(nèi)容。

4.3 服務(wù)的配置

WCF的配置使用.NET Framework 的Configuration配置系統(tǒng)。在Visual Studio中配置一個WCF服務(wù)時,如果是自托管宿主或Windows Services宿主,則配置文件為App.confing,如果是IIS宿主,則配置文件為Web.config。配置本模塊中的WCF服務(wù)時,宿主是一般的Windows應(yīng)用程序,因而配置文件為App.config。跟WCF相關(guān)的配置中最基本的元素為system.serviceModel,WCF的基本設(shè)置集中在這個元素中。

4.4 用戶界面層的實(shí)現(xiàn)

本系統(tǒng)用戶界面層設(shè)計時應(yīng)用了DevExpress控件。用戶界面程序的配置文件app.config,與服務(wù)的配置一樣,定義了綁定方式為nettcpbinding。將服務(wù)通過終結(jié)點(diǎn)公布出去:將屬性標(biāo)簽下設(shè)置

//配置文件定義,指定服務(wù)器端端品及文件路徑

5 結(jié)束語

本文介紹了基于WCF的面向服務(wù)的多層結(jié)構(gòu)以及WCF流傳輸技術(shù),并將其應(yīng)用于軟件協(xié)同開發(fā)平臺,介紹了系統(tǒng)實(shí)現(xiàn)過程。WCF框架在開發(fā)面向服務(wù)的分布式應(yīng)用上帶給我們?nèi)麦w驗(yàn),在實(shí)際項(xiàng)目開發(fā)中合理應(yīng)用它是十分必要的。

參考文獻(xiàn)

[1]秦超,楊華生. ASP.NET項(xiàng)目軟件協(xié)同開發(fā)模式探討[J]. 大眾科技,2006(1):65-66.

[2]王平,張曉,馬晶. 基于WCF的教學(xué)管理信息系統(tǒng)集成研究與實(shí)現(xiàn)[J]. 軟件導(dǎo)刊,2010,9(9):182-184.

主站蜘蛛池模板: 日本午夜影院| 婷婷五月在线视频| 亚洲网综合| 性欧美在线| 亚洲乱码在线播放| 亚洲AV色香蕉一区二区| 亚洲日本www| 18黑白丝水手服自慰喷水网站| 黄色片中文字幕| 无码乱人伦一区二区亚洲一| 国内精品手机在线观看视频| 久久亚洲美女精品国产精品| 国产99精品视频| 宅男噜噜噜66国产在线观看| 国产一区在线视频观看| 国产最爽的乱婬视频国语对白 | 精品无码一区二区三区电影| 亚洲视频在线观看免费视频| 国产麻豆永久视频| 在线亚洲天堂| 视频国产精品丝袜第一页| 日韩av电影一区二区三区四区 | 国产福利免费视频| a亚洲天堂| 国产丝袜第一页| 亚洲啪啪网| 亚洲aⅴ天堂| 久无码久无码av无码| 国产内射在线观看| 伊人成人在线视频| 国产高清无码麻豆精品| 国产精品99一区不卡| 国产视频一二三区| 国内老司机精品视频在线播出| 极品尤物av美乳在线观看| 久久激情影院| 久久这里只有精品2| 久久一本精品久久久ー99| 视频一区视频二区日韩专区| 午夜免费视频网站| 国产流白浆视频| 国产爽歪歪免费视频在线观看 | 无码内射在线| 国产91特黄特色A级毛片| a毛片免费在线观看| 欧美三级视频在线播放| 亚洲国产精品人久久电影| 无码AV日韩一二三区| 色婷婷久久| 欧美丝袜高跟鞋一区二区| 一级毛片免费高清视频| 国产成人精品在线1区| 亚洲午夜片| 久久免费视频6| 在线国产毛片| 国产不卡在线看| 国产成人精品男人的天堂| 99这里精品| 亚洲精品天堂在线观看| 国产欧美日韩va另类在线播放| 国产特一级毛片| 国产人成在线观看| 精品国产网站| 久久精品亚洲专区| 一级爱做片免费观看久久| 亚洲欧美精品日韩欧美| 91在线国内在线播放老师| 欧美日韩亚洲综合在线观看| 色天天综合久久久久综合片| 亚洲欧美精品一中文字幕| 激情六月丁香婷婷| 国产精品久久久久久影院| 日韩精品资源| 九一九色国产| 99精品国产高清一区二区| 国产爽歪歪免费视频在线观看| 色婷婷天天综合在线| 亚洲五月激情网| 久久综合伊人 六十路| 日本午夜精品一本在线观看| 国产污视频在线观看| 亚洲色成人www在线观看|