建立了一個WCF服務之後,為了能夠方便的使用WCF服務,就需要在用戶端遠程調用伺服器端的WCF服務,
使用WCF服務提供的方法並將服務中方法的執行結果呈現給使用者,這樣保證了伺服器的安全性和代碼的隱秘性。
要使用WCF服務首先要建立WCF應用,應用建立在上一節講到有。使用WCF服務
http://blog.csdn.net/bestdowt1314/archive/2011/01/25/6163660.aspx
一、在用戶端添加WCF服務
為了能夠方便的在不同的平台,不同的裝置上使用執行相應的方法,這些方法不僅不能夠暴露伺服器位址,
同樣需要在不同的用戶端上能呈現相同的效果,這些方法的使用和建立不能依賴本地的應用程式,為了實現跨平台
的安全應用程式開發就需要使用WCF。建立了WCF服務,用戶端就需要進行WCF服務的串連,如果不進行WCF服務
的串連,則用戶端無法知道在哪裡找到WCF服務,也無法調用WCF提供的方法。首先需要建立一個用戶端,用戶端
可以是ASP.NET應用程式也可以是WinForm應用程式。右擊解決方案管理器,單擊【項目】,在下拉式功能表中選擇【添加新項】,為該項目添加一個ASP.NET應用程式(在這裡我是一個現成的ASP.NET MVC項目,和建立的是一樣的)所示。
項目添加WCF引用,右擊當前項目,在下拉式功能表中單擊【加入服務參考】選項,在快顯視窗中單擊【發現】按鈕,即可發現WCF服務,所示。添加完成後WCF服務就會被掛起,等待用戶端對WCF服務中的方法進行調用,所示。
加入服務參考
wcf服務引用已添加
二、在用戶端使用WCF服務
當用戶端添加了WCF服務的引用後,就能夠非常方便的使用WCF服務中提供的方法進行應用程式開發。
在用戶端應用程式的開發中,幾乎看不到伺服器端提供的方法的實現,只能夠使用伺服器端提供方的方法。
對於用戶端而言,伺服器端提供的方法是不透明的。
調用WCF方法
public ActionResult Index()<br /> {<br /> ViewData["txt_input"] = "shanghai";<br /> WcfServiceReference.WcfServiceClient wsc = new WcfServiceReference.WcfServiceClient();<br /> ViewData["txt_display"] = wsc.GetShopInfo("shanghai");<br /> return View();<br /> }
這裡將輸入參數和調用WCF後得到的值分別存到兩個ViewData中。
<input type="text" id="txt_input" value='<%: ViewData["txt_input"] %>'/><br /> <input type="text" id="txt_display" value='<%: ViewData["txt_display"] %>' />
前台顯示輸入參數,和輸出結果值,運行結果如下
ok,基本WCF的調用和以前WebService的方法都是一樣的。當然WinForm的引用和調用也是差不多的。