使用WCF服務

來源:互聯網
上載者:User

      建立了一個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的引用和調用也是差不多的。

 

 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.