WCF-001:WCF的发布
? ? 隨著“云”時代的到來,“云”已經(jīng)無處不在了。什么是“云”,無非就是利用互聯(lián)網(wǎng)強大的功能建立多個服務(wù)器,然后再利用互聯(lián)網(wǎng)的傳輸數(shù)據(jù)的特點將數(shù)據(jù)從某個服務(wù)器中讀取出來或者將你的數(shù)據(jù)上傳上去。當然這個服務(wù)器不是一定就是傳統(tǒng)意義的服務(wù)器,具備服務(wù)器功能的個人電腦也算是服務(wù)器。
所以在編程中服務(wù)的作用越來越大了,.net從2.0的webservice,到3.5之后的WCF,服務(wù)的功能越來越強了。現(xiàn)在先從簡單的看起,先看看WCF服務(wù)的發(fā)布。
環(huán)境:
系統(tǒng):windows 7
編程工具:visual studio 2010
.net 版本:4.0
一、創(chuàng)建一個WCF服務(wù)。
1、新建wcf項目,如圖:
2、建好后,手動增加幾個類,如圖:
3、實現(xiàn)服務(wù)接口,創(chuàng)建序列化的數(shù)據(jù)類。
也就是本項目中的IService1.cs、Service1.svc和Person類,注意Person類中的 [DataContract]和[DataMember]這就不用說了,網(wǎng)絡(luò)傳輸數(shù)據(jù)類必須要序列化。還有就是IService1中的[ServiceContract]和[OperationContract],這都是標準模式,只有這樣寫遠程客戶端才能訪問的到服務(wù)的方法。
寫兩個簡單的測試方法:所有代碼如下,
(1)、方法都是寫在服務(wù)接口中的
(2)、實現(xiàn)接口中的方法
public class Service1 : IService1{public string GetData(int value){return ServiceProvider.GetData(value);}public Person GetDataUsingDataContract(){return ServiceProvider.GetDataUsingDataContract();}}(3)、必要的時候創(chuàng)建類,用于保存數(shù)據(jù)什么的
[DataContract]public class Person{private string id = string.Empty;private string name = string.Empty;[DataMember]public string ID{get { return this.id; }set { this.id = value; }}[DataMember]public string Name{get { return this.name; }set { this.name = value; }}}具體的實現(xiàn)方法可以都寫在Service1中,為了代碼能看的清楚一些,放在另一個類中用靜態(tài)方法實現(xiàn)。還有一些其他方法的類。
??
另外這個Web.config文件,是保存一些默認屬性,比如如果有用到數(shù)據(jù)庫這里就保存數(shù)據(jù)庫連接。還有如果想設(shè)置一些配置可以手動創(chuàng)建一個App.config,用法就不說了。
好了到此,一個簡單的WCF服務(wù)就創(chuàng)建好了。
代碼下載: http://download.csdn.net/detail/yysyangyangyangshan/5691643
二、如何發(fā)布
1、簡單的測試
創(chuàng)建好了WCF服務(wù),直接F5運行吧。會在你的瀏覽器中彈出如下,
圖中的http://localhost:2303/Service1.svc?wsdl就是你的服務(wù)的url,可以直接在本地測試。
創(chuàng)建一個客戶端測試工程。
需要“添加服務(wù)引用”,將這個url添加。這很簡單就不用給圖了。給這個引用的服務(wù)命名:LocalRunService,如圖,
調(diào)用:
? ? ? ? ?
結(jié)果:
2、正式發(fā)布
//待續(xù)
轉(zhuǎn)載于:https://www.cnblogs.com/dyllove98/p/3170120.html
總結(jié)
以上是生活随笔為你收集整理的WCF-001:WCF的发布的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 浙江大学PAT上机题解析之1008. 数
- 下一篇: HDU 4540