建立WCF服務

2021-05-22 02:04:32 字數 1734 閱讀 9640

我們在開發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...