成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Silverlight消耗WCF服務實現步驟及重要性點撥

開發 開發工具
Silverlight消耗WCF服務對于有經驗的開發人員來說是比較容易的,尤其是對于消耗過一個ASP.NET ASMX Web 服務的編程人員來說。

WCF的實際應用中,有很多操作技巧是需要我們去熟練掌握,以此來滿足我們對程序開發中的各種需求。在這里我們就一起來了解一下關于Silverlight消耗WCF服務的相關操作步驟,來幫助我們提高這方面的編程能力。#t#

VS2008的Silverlight工具提供了內置功能來創建用Silverlight激活的WCF服務并且在不需要編寫大量代碼的情況下消耗WCF服務。Silverlight 3現在支持二進制XML,這一功能可以用更快的速度把數據從服務器傳到客戶端。如果需要的話,標準SOAP信息也能被傳送。

如果你以前消耗過一個ASP.NET ASMX Web 服務,那么你會覺得Silverlight消耗WCF服務易如反掌。VS2008的新增服務引用對話框允許你選取該服務并在不編寫大量代碼的情況下生成客戶端。生成代理前,要明白Silverlight只能調回到原始服務器,在原始服務器上,會默認提供Silverlight XAP應用程序文件。

如果你需要調用一個WCF服務,該服務可能存在于不同域或不同端口中,那么該服務必須擁有客戶訪問政策文件,文件名為clientaccesspolicy.xml,文件位于服務器低端。Silverlight會檢查這個文件以查看是否該文件被允許執行跨域的調用。

下面的例一展示了一個樣本文件:

 

  1. < ?xml version="1.0" encoding="utf-8"?>   
  2. < access-policy> 
  3. < cross-domain-access> 
  4. < policy> 
  5. < allow-from> 
  6. < domain uri="*"/> 
  7. < /allow-from> 
  8. < grant-to> 
  9. < resource path="/" include-subpaths="true"/> 
  10. < /grant-to> 
  11. < /policy> 
  12. < /cross-domain-access> 
  13. < /access-policy> 

例一:客戶訪問政策文件可以放置到服務器低端以便允許Silverlight客戶來調用處于不同域或運行于不同端口的服務。

為了創建一個WCF服務代理,你首先需要創建一個Silverlight應用程序項目。一旦該項目被創建好,你就可以右鍵單擊項目,然后選擇添加服務參考。如下所示,系統會提供Add Service Reference對話框。

如果WCF服務位于相同的VS方案中,你可以點擊Discover按鈕。否則,你就要輸入到達Address文本框中Web Service Description Language(WSDL)文件的路徑。一旦文件被定位,你就可以給代理代碼一個命名空間,然后點擊確認按鈕。

一旦客戶代理被創建,你就可以調用Silverlight應用中的服務。要記住所有與Silverlight一起發生的網絡操作都是異步的,因此服務被調用的時候,瀏覽器不會鎖定。

例二展示了一個使用客戶代碼調用服務和綁定數據的示例:

 

  1. void MainPage_Loaded(object sender, RoutedEventArgs e)   
  2. {  
  3. //Create service proxy  
  4. WcfService.Service1Client proxy = new WcfService.Service1Client();  
  5. //Wire the proxy to a completed handler to allow the async 
    operation to be handled  
  6. proxy.GetCustomerCompleted +=  
  7. new EventHandler< WcfService.GetCustomerCompletedEventArgs> (  
  8. proxy_GetCustomerCompleted);  
  9. //Call the service asynchronously  
  10. proxy.GetCustomerAsync(id);  
  11. }  
  12. void proxy_GetCustomerCompleted(object sender, SilverlightApplication1
    .WcfService.GetCustomerCompletedEventArgs e)  
  13. {  
  14. //Bind the returned data to the DataContext  
  15. this.DataContext = e.Result;  

例二;使用一個客戶代理對象來調用Silverlight中的WCF服務。

代理對象是首次被創建,然后通過一個事件驅動型模式,被名為proxy_GetCustomerCompleted的異步事件處理器捆綁起來。該服務通過援引GetCustomerAsync方法被異步調用。一旦服務返回了數據,調回方法會被自動調用,GetCustomerCompletedEventArgs參數會被訪問以檢索數據。在這個示例中,數據被直接綁定到應用程序的DataContext屬性中。注意不需要有額外的操作來設定數據傳遞路線。代理會自動處理所有的事情。

Silverlight應用程序不能直接調用一個數據庫,但是他們可以從一系列諸如WCF服務,ASMX服務和其他標準兼容等服務中存取數據。以上就是我們為大家詳細介紹的Silverlight消耗WCF服務相關步驟。

責任編輯:曹凱 來源: IT專家網
相關推薦

2009-06-25 11:18:20

Silverlight

2010-02-26 14:49:10

WCF服務實例單一性

2009-12-25 10:17:27

2021-04-28 08:49:36

UPS電源機房

2010-03-02 15:59:41

WinCE

2009-12-25 15:00:48

WPF軟件

2010-07-30 16:28:06

2023-10-24 11:07:57

2020-09-14 09:39:22

信號

2010-02-24 10:41:28

WCF服務保護

2020-08-27 07:00:00

代碼軟件應用程序

2013-08-08 10:10:06

備份策略全備份增量備份

2017-12-29 10:14:48

IT項目

2011-07-05 18:30:44

站內優化

2009-12-23 15:57:40

WPF傳遞事件

2022-05-13 08:00:00

EiPaaS容器

2021-08-18 15:11:02

數字化轉型IT技術

2023-08-23 16:43:53

人工智能可持續工作空間

2010-02-26 17:51:16

Silverlight

2010-03-01 17:44:39

Silverlight
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 盗摄精品av一区二区三区 | 超碰操| 精精国产xxxx视频在线播放 | 1级毛片| 天堂中文资源在线 | 久久精品网 | 国产高清区 | 日韩高清一区二区 | 久久一二区 | 中文在线a在线 | 凹凸日日摸日日碰夜夜 | 国产成人免费视频 | 中文字幕精品一区二区三区精品 | 日韩视频在线播放 | 999在线精品 | 久久91精品国产 | 99久久精品国产毛片 | 在线视频一区二区 | 中文字幕四虎 | 亚洲男女激情 | 91精品国产一区二区三区 | 99这里只有精品 | 日日爱av | 欧美亚洲网站 | 丁香婷婷在线视频 | 亚洲欧美综合网 | 99视频免费播放 | 国产精品久久久久久久久久久久久 | 麻豆久久久久久久久久 | 国产精品久久久久久久午夜片 | 天堂一区二区三区四区 | 国产美女福利在线观看 | 亚洲精品白浆高清久久久久久 | 久久伊人精品一区二区三区 | 国产成人精品福利 | 麻豆久久久9性大片 | 精品一区二区久久久久久久网精 | 成人一区二区在线 | 日韩在线免费播放 | 国产成人精品一区二区三区视频 | 中文字幕男人的天堂 |