全方位解析WCF應(yīng)用程序
WCF應(yīng)用程序?qū)τ趧倓偨佑|編程的朋友來(lái)說(shuō)可能不是很熟悉。不過(guò),只要我們掌握了它的應(yīng)用技巧,就會(huì)發(fā)現(xiàn),WCF是一個(gè)非常強(qiáng)的開(kāi)發(fā)框架。#t#
WCF應(yīng)用程序通常屬于分布式的SOA方案。為了體現(xiàn)服務(wù)契約的特點(diǎn),有必要在設(shè)計(jì)WCF應(yīng)用程序時(shí),注意程序集的劃分。
原則上,我們需要將服務(wù)契約、數(shù)據(jù)契約、服務(wù)實(shí)現(xiàn)分為單獨(dú)的三個(gè)程序集,這樣可以在一定程度上解除服務(wù)契約與服務(wù)實(shí)現(xiàn)的耦合,也便于對(duì)數(shù)據(jù)契約對(duì)象的管理。更重要的是,WCF客戶端可以有效地重用服務(wù)契約程序集與數(shù)據(jù)契約程序集。
假定該WCF應(yīng)用程序名為WCFSolution,則各自的程序集以及命名空間為:
服務(wù)契約:WCFSolutionServiceContract
數(shù)據(jù)契約:WCFSolutionDataContract
服務(wù)實(shí)現(xiàn):WCFSolutionServiceImplementation
三者的依賴關(guān)系為:服務(wù)契約依賴于數(shù)據(jù)契約,服務(wù)實(shí)現(xiàn)依賴于服務(wù)契約與數(shù)據(jù)契約。在部署客戶端時(shí),不需要提供服務(wù)實(shí)現(xiàn)類的程序集。
以上設(shè)計(jì)看似簡(jiǎn)單,然而一旦我們從一開(kāi)始就養(yǎng)成了良好的設(shè)計(jì)習(xí)慣,會(huì)在以后進(jìn)行WCF應(yīng)用程序的開(kāi)發(fā)時(shí),起到事半功倍的效果。
實(shí)際上,WCF應(yīng)用程序同樣體現(xiàn)了分層式架構(gòu)的思想。