我們在開發wcf時,一般用vs建立wcf專案,然後**自動生成。但如果你想要真正了解全過程,不防,咱門今天晚上自己從零開始。
完成乙個wcf的服務發布。
模擬場景:我們要建立乙個全國文憑資源查詢系統。用服務形式進行公開。
1.首先我們建立乙個空白解決方案:mywcf
2.我們再來建立乙個windows程式專案。diplomaservice如圖,記住一定是windows程式專案
在diplomaservice專案中建立乙個
studentmodel類,為學生模型類。包含學生基本資訊的類
**:
然後在建立istudentaccess的介面,istudentaccess資料訪問契約。在wcf中介面是wcf中的契約類
在istudentaccess中定義方法:studentmodel getmodel(string studentid);
**:
接下來:我們就應該來建立乙個服務類studentaccess,那麼我們真正的服務類實現我們的契約類介面istudentaccess
**:
這樣我們三個基本的類都建立好了接下來我們來配置它們,使得它們可以被發布。
3.伺服器簡單配置。
引用:.net3.5中的wcf必須的類庫。需要新增引用從.net中選擇下面的類庫。
system.servicemodel;
system.runtime.serialization;
配置:
對契約istudentaccess介面的配置:
在介面上加屬性:[servicecontract]//應用程式中定義服務協定(表明當前是此為wcf契約)
在方法getmodel上加上屬性[operationcontract]//表示(應用程式中服務協定的一部分)
另外,您可以加上自己的名稱和命名空間,不加系統在會提供有預設值。
對studentmodel上加上屬性:[datacontract],指定當前模型類將被序列化。
對studentmodel的所有公開的屬性上加上 [datamember]表示為序列化成員的資料成員部分。
另外也可以用xmlserializerformat對模式類進行序列下,xmlserializerformat序列化時,它會把該類的公開屬性成員全部直接序列話。
但是xmlserializerformat沒有datacontract效率高,而datacontract更為靈活。可以指定部分成員序列化。
這樣我們的wcf服務程式就寫好了,接下來我們就該發布它了,也就是服務上經常說到的承載服務。
那麼我們承載服務的載體是什麼呢?有很多方式,只要是.netformwork的程式都可以承載。比如:控制抬程式,應用程式,iis服務,windows服務等等。
那發布方式呢,可以通過配置檔案發布,也可以通過**發布。
然後啟動程式寫上**
servicehost host = new servicehost(typeof(studentaccess));
host.open();
有沒有成功,訪問一下連線就知道了
具體培植說明下再說了,我也是剛剛學習,大家多指教,**過幾天再發布上來。
使用WCF建立Web服務
learn wcf service basic wcf是使用託管 建立和執行面向服務 service oriented 應用程式的統一框架。它使得開發者能夠建立乙個跨平台的 安全 可信賴 事務性的解決方案,且能與已有系統相容協作。wcf是微軟分布式應用程式開發的集大成者,它整合了 net 平台下所有...
wcf的簡單服務建立
這是我第一次在部落格寫作,主要是為了記錄一下自己在工作或者生活中的一些所得,希望能夠用作乙個備忘錄吧。首先,在vs上面建立乙個專案,不用特定的建立wcf專案,直接建立乙個空專案即可,廢話不多說直接上 這個是服務端的入口程式,因為服務比較簡單,不需要手動配置,直接用 的方式新增配置。using sys...
silverlight動態建立WCF服務
最近在發布silverlight專案時,服務位址不是固定,因此服務需要動態建立。在網上搜了點資料找到了動態建立服務的方法,直接上 根據服務型別建立服務 public static class createservice catch exception if constructor null inst...