當前位置:首頁 » 操作系統 » wcf項目源碼

wcf項目源碼

發布時間: 2022-07-23 20:55:42

❶ WCF全面解析的前言

「全書之寫印,實系初稿。有時公私瑣務蝟集,每寫一句,三擱其筆;有時興會淋漓,走筆疾書,絮絮不休;有時意趣蕭索,執筆木坐,草草而止。每寫一段,自助覆閱,輒搖其首,覺有大不妥者,即貼補重書,故剪刀漿糊乃不離左右。個中甘苦,只自知之。」
在某個陽光明媚的早晨,我在去上班的公交車上翻看岳南先生的《南渡北歸》的時候,看到上面這段董作賓描述自己寫作《殷歷譜》之甘苦的文字,回想起我寫作這本書的經歷,不禁感慨萬千。我無意將《WCF全面解析》自比煌煌巨著《殷歷譜》,只是覺得人同此心,這段文字正好描述我寫作此書的狀態。
《WCF技術剖析(卷1)》(以下稱《卷1》)於2009年7月正式出版,在此不久我就開始了《卷2》的創作。對於《卷1》的寫作,我還算是游刃有餘,但是寫作《卷2》的難度是我始料未及的。如果像市面上大部分專著一樣只涉及WCF編程,我想《卷2》早在一年之前就已經完成了。但是我在寫作之初就沒有將本書定位為一本純粹的WCF編程書籍,而是決心寫一本「深入肌理」,對WCF進行「庖丁解牛」式剖析的書籍。在沒有任何現成資料可供參考的情況下,我只能通過對源碼的分析來了解其底層的實現原理。為了能夠確保這部分內容的正確性,我編寫了很多的測試程序來證實我的想法。
「探究之深」是本書難以在較短的時間之內交付出版的一個主要原因,而另一個因素則是「涉及之廣」。WCF不是微軟在Windows平台下的閉門造車,而是在設計之初就考慮到了針對開放標準的支持。《卷2》涉及到太多的WS-*規范,比如「異常處理」一章涉及到SOAP;「元數據」一章涉及到WS-Policy、WS-Transfer、WS-MEX和WSDL;「事務」一章涉及到WS-Coordination和WS-AT;「可靠會話」一章涉及到WS-RM;「傳輸安全」一章涉及到WS-Security、WS-Trust 、WS-Secure Conversation和WS-Security Policy;「WCF 4.0新特性」一章涉及到WS-Discovery。對於這一系列的WS-*規范,單單從頭到尾看一遍都需要花費不少時間,而我已經不太記得自己究竟看多少遍了。
《卷1》的整個內容基本上都圍繞著WCF本身,但《卷2》卻涉及到不少的背景知識。為了讓讀者對WCF有一個全面而深刻的了解,我在書中涉及到很多背景知識的介紹。比如「事務」一章中花費了很多文字介紹MSDTC和System.Transactions事務;「並發與限流」一章中有針對同步上下文的介紹;為了讓讀者能夠深入認識可靠會話的實現原理,我將其同TCP協議的機制進行類比;「隊列服務」一章中對MSMQ進行了系統的介紹;「傳輸安全」一章中更是涉及到針對非對稱加密以及NTLM和Kerberos認證原理的介紹。
由於寫作難度不小,加上寫作和資料收集只能在工作之餘進行,所以很多次都有中途放棄的念頭。很有意思的是,每次在我下定決心放棄寫作後沒幾天總是會收到《卷1》的讀者給我的留言,這些留言體現了對《卷1》的肯定,充滿了對《卷2》的期待。讀者的肯定和期待一次次給了我堅持下去的力量,前後經歷了兩年的時間終於完成了《卷2》,這算是對讀者的交代,也是對我自己的交代。
《卷2》完稿之後我開始為《卷1》的再版進行修訂。對於出版後的《卷1》我基本上很少翻看,因為我個人基本上不太喜歡翻看自己寫的東西,包括自己寫的400多篇博客文章。針對《卷1》的修訂讓我第一次完整地閱讀自己寫的東西,經過了寫作《卷2》的「折磨」,讓我對WCF有了更加深刻的認識,於是我基於對WCF最新的理解開始對《卷1》的內容進行大刀闊斧的修改。雖然《卷1》大體上還是保留著原來的結構,但是內容已經發生了巨大的改變。據我粗略估計,改動內容的比率基本上達到一半。
最後我將《卷2》和修訂後的《卷1》給李建忠和呂建偉(阿朱)老師幫忙審閱,李建忠老師建議增加關於WCF REST的內容,於是我在《卷1》中新加了「REST服務」一章。由於新的《卷1》已經難現往日模樣,在本書的策劃編輯張春雨老師的建議下我決定將原《卷1》和《卷2》作為一個整體分上、下冊出版,於是才有了你手中的這本《WCF全面解析》。 「實踐出真知」,不斷地在具體應用中進行實踐是學習WCF最有效的手段。實踐是檢驗真理的唯一標准,通過將所學的WCF知識應用到一個真正的應用之中,才能確保我們掌握的知識的正確性。實踐不但可以鞏固我們的所學,還會讓我們意識到不足。《WCF全面解析》在每一章節都會提供一系列的實例演示,讀者可以單獨下載這163個實例的源代碼。

❷ 求《WCF服務編程》隨書源代碼,要完整版的啊

❸ 跪求WCF的工作原理

首先:

WCF的全稱是,Windows通信基礎的意思,是Microsoft為構建面向服務的應用程序而提供的統一編程模型,它整合.NET平台下所有和分布式系統有關的技術。

其次:

WCF本質是面向服務的。主要分為服務端和客戶端兩部分。服務端和客戶端進行通信的過程如下圖所示:

在上圖中,主機進程就是服務端,在其中需要創建服務,然後將服務通過EndPoint(終結點)與客戶端進行通信。客戶端在使用服務時,需要首先創建一個代理服務,然後調用這個代理服務。

EndPoint(終結點)在WCF中是非常重要的部分。它包含了服務地址(Address)、綁定格式(Binding)和契約(Contract)。其中,地址定義了服務的位置,綁定定義了服務通信的方式,契約定義了服務所提供的功能。為了便於記憶,我們將終結點的這三個要素簡稱為服務的ABC

服務端提供了什麼服務,都具備什麼功能,這被稱為WCF服務的契約。

WCF服務不能憑空存在。每個WCF服務都必須託管(Hosting)在一個Windows進程中,該進程被稱為宿主進程。

WCF服務宿主可以由IIS提供,可以由Windows服務提供,也可以由WindowsVista的Windows激活服務提供。其中,使用IIS託管只能使用HTTP協議。

❹ wcf分布式winform快速開發框架系統源碼許可權管理源碼c#+sql怎麼安裝

berated them for wasting his

❺ C#WCF winform小項目源碼

❻ 如何構建wcf項目 服務端和客戶端分別要進行哪些操作

你這個問題有點泛了, 首先你需要在服務度定義服務協定(一般是介面) 然後再根據服務協定來實現服務(實現介面中定義的方法) 然後你需要把服務發布出去 可以採用自承載和IIS等來承載 一旦承載好了之後 就會有一個服務地址 然後在你的客戶端添加引用就可以了

❼ 如何配置net.tcp 的WCF服務

這個方法里,我們有兩個函數,一個能夠根據學生點獲取學生全名,另一個是根據學生點獲取學生的實體對象。
好了,讓我們來編譯這個項目,得到一個WCFServiceGeneratedByConfig.exe文件。
然後,我們需要配置文件來讓伺服器端啟動,所以這里我們要用WCF Service Configuration Editor
工具來進行,由於在VS2008 和VS2010中帶有這個軟體,我們可以直接通過菜單->Tools->WCF Service Configuration Editor來打開。
首先,點擊File->New config, 打開Service的Configuration界面。

然後,點擊Create a new service…,在彈出的界面中,我們選擇剛才生成的那個WCFServiceGeneratedByConfig.exe文件。雙擊之後,軟體自動顯示出了裡面含有的Service:

點選那個Service,然後點擊兩次next,我們會看到出現了選擇Communation Mode的界面,這里由於我們用的是net.tcp,所以我選擇了第一個:TCP。

然後點擊Next,我們會看到要我們填寫EndPoint,這里我隨便填寫了一個:

之後,點擊Next知道Finish,然後,我們的最基本的配置就結束了。
回到Config界面之後,我們點擊Advanced->Service Behaviors->New Service Behavior Configuration,在彈出的界面中,我們點擊Add->serviceMetadata:

然後點擊Add,我們就添加了一個Behavior Element。點擊剛剛生成的serviceMetadata節點,在顯示的界面中,設置HttpGetEnabled為true。

然後點擊原來的Service節點下的Host節點,在Base Address欄目下單擊Add,添加如下的Base Address:

最後點擊OK。然後點擊菜單File->Save As 保存到項目文件夾下即可。
這里是生成的代碼:
View Code
這一步做完後,我們需要讓服務能夠啟動,怎麼啟動呢?請看下面的代碼:
View Code
代碼中的注釋部分非常重要,我們一定要添加,否則下面的步驟不能進行,具體的原因,參加我的另一篇文章:在net.tcp模式下,由SvcUtil.exe生成代理類文件和配置文件
然後運行這個ConsoleApplication。
接下來,找到SvcUtil.exe,C:\Program Files\Microsoft SDKs\Windows\v7.0A\bin\SvcUtil.exe,在CMD窗口下運行如下命令:
C:\Program Files\Microsoft SDKs\Windows\v7.0A\bin\SvcUtil.exe net.tcp://127.0.0.1:50001/StudentServiceEndPoint

這樣,這個小工具就會自動的給我們生成代理類和配置文件

Microsoft (R) Service Model Metadata Tool

[Microsoft (R) Windows (R) Communication Foundation,版本 3.0.4506.2152]

版權所有(c) Microsoft Corporation。保留所有權利。

正在嘗試使用 WS-Metadata Exchange 從「net.tcp://127.0.0.1:50001/StudentServiceEndPoint」下載元數據。此 URL 不支持 DISCO。

正在生成文件...

E:\WCF\WCF_ChatRoom\StudentService.cs

E:\WCF\WCF_ChatRoom\output.config

請按任意鍵繼續. . .

客戶端的配置步驟
接下來,新建一個WindowsFormsApplication程序,將這個代理類拷入,配置文件修改名稱為App.config拷入,
然後在Form1.cs中拖入一個文本框,一個按鈕,一個DataGridView,後台代碼如下:
View Code
啟動這個實例,輸入學生ID,我們成功得到了服務端返回的值。
在本機和公網上的運行結果

那麼能不能在公網上使用呢?呵呵,這個當然,將服務端拷貝到外網的一台機器上,然後修改伺服器端的配置文件中的地址為:net.tcp://169.*.*.124:50001/ StudentServiceEndPoint,然後將本機的配置文件中的地址也修改為這個,最後運行,依然能夠得到返回的結果。

❽ 剛接觸WCF,想知道 base.InvokeAsync是怎麼執行的,怎麼能跟過去看到閱讀源碼

你這是在客戶端調試的時候看的吧,這種代碼新手真不容易看懂啊。還是看服務端的代碼好些。

❾ 誰有ASP.NET MVC3 WCF 開發的小項目源代碼

如果你是想學習的話,最好下載個mvc3的書籍,然後跟著他邊學變寫代碼,等你學完了,自然就有項目源碼了

❿ wcf開發的服務,怎麼自動生成客戶端代碼

首先VS中的模板WCF SERVICE APP 項目,是一個承載到IIS的服務,用過web service就清楚,部署都差不多。 客戶端引用wcf服務,知道url地址就行了,客戶端添加服務引用,和添加以前的web service差不多。 客戶端使用到服務端的數據模型,在服務端定

熱點內容
演算法和人性 發布:2025-01-20 03:28:31 瀏覽:473
軟體編程1級 發布:2025-01-20 03:19:39 瀏覽:952
嫁個編程男 發布:2025-01-20 02:51:39 瀏覽:933
掛勞文件夾 發布:2025-01-20 02:44:22 瀏覽:521
寫編程英文 發布:2025-01-20 02:37:50 瀏覽:16
安卓怎麼修改飢荒 發布:2025-01-20 02:20:54 瀏覽:619
android64位開發環境 發布:2025-01-20 01:58:01 瀏覽:262
阿里雲伺服器能搭美國站點 發布:2025-01-20 01:49:34 瀏覽:279
安卓手機壁紙如何更換成動態壁紙 發布:2025-01-20 01:40:27 瀏覽:706
安卓微信簽名在哪裡修改 發布:2025-01-20 01:25:31 瀏覽:110