WCF for .Net Compact Framework 3.5 應用程式開發樣本

來源:互聯網
上載者:User

本文轉自:http://www.cnblogs.com/entlibforum/archive/2008/09/23/1296364.html

 

Visual Studio 2008 為 Windows Mobile 應用程式的開發人員提供了通過 Microsoft .NET Compact Framework 3.5 訪問 Windows Communication Foundation (WCF) 功能子集的能力。

 .NET Compact Framework 3.5 PowerToys 附帶了一個名為 NetCFSvcUtil.exe 的工具,可以為您產生這些服務代理類。由於 NetCFSvcUtil.exe 沒有包括在 Visual Studio 2008 中,因此您需要自行下載 Power Toys for .NET Compact Framework 3.5,請參考文章最後提供的連結。
 
 由於 .NET Compact Framework 3.5 不支援 wsHttpBinding,因此需要將 Visual Studio 建立的預設端點改為 basicHttpBinding 或為該類型添加一個新端點。由於利用 WCF 可以很方便地提供多個端點,而且 wsHttpBinding 為那些支援它的應用程式提高了安全性,因此我們將保留它不動並添加一個使用 basicHttpBinding 的新端點。 關於WCF Service 應用程式的開發,這裡不進行具體描述。不過,推薦一篇WCF經典文章:WCF 開發樣本嚮導 --- 經典推薦! 關於行動裝置應用程式,通過Visual Studio 2008,使用“智慧型裝置項目”模板建立一個新項目。將下列 Compact WCF 程式集添加到您的項目引用中:System.ServiceModel.dll 和 System.Runtime.Serialization.dll。這些程式集是開發WCF Client 端程式所必須的。 下面介紹建立WCF for .Net Compact Framework 3.5 應用程式的一些基本步驟。1. 在建立好智慧型裝置項目程式後,接下來通過Power Toys for .NET Compact Framework 3.5 提供的 netcfsvcuti.exe 工具,建立WCF Service 的代理類和中繼資料,如Contract等等。 netcfsvcutil  /language:cs  http://www.entlib.com:8080/IArticleService.svc 本樣本程式調用的WCF Service 是EntLib.com 提供的一個Article Service,用來返回最新的部落格技術文章。 上述指令碼,產生如下2個檔案:Generating files...ArticleManager.csCFClientBase.cs 此工具不會像案頭 svcutil.exe 工具那樣產生 output.config 檔案。.NET Compact Framework 3.5 不支援通過設定檔對 WCF 進行配置,因此服務的所有端點資訊都需要在代碼中。將上述檔案,添加到智慧型裝置項目程式中,後面會調用ArticleManager.cs 檔案。 此工具產生的代理類ActicleManager.cs將方法調用轉換到 WCF 訊息中,然後使用 .NET Compact Framework 訊息傳送層進行發送。響應訊息隨後被還原序列化並通過該方法的傳回值傳回應用程式。 2. 編寫代碼調用WCF Service。下面的範例代碼,調用WCF Service 的ArticleManager.GetRecentArticle() 方法,返回最新的10篇部落格文章。        private ArticleEntity[] articleList = new ArticleEntity[]{};         private void btnRetrieve_Click(object sender, EventArgs e)        {            IArticleService articleManager = new ArticleServiceClient();             articleList = articleManager.GetRecentArticle();            lstNewArticle.DataSource = articleList;            lstNewArticle.DisplayMember = "Title";            lstNewArticle.ValueMember = "ID";        }這裡Device調用WCF Service 方法和Windows 傳統型程式調用WCF Service基本類似。不過,在Device裝置或模擬器調用WCF Service 之前,確認Device裝置中的瀏覽器可以訪問WCF URL。本樣本的WCF 地址為:http://www.entlib.com:8080/IArticleService.svc。WCF伺服器不會響應任何裝置請求,除非裝置或模擬器已插入。  下面是樣本程式的運行介面:
  樣本程式碼: 
 本樣本項目由http://blog.EntLib.com/yangyang/ 提供,歡迎下載、交流。 參考文章:1. 使用 .NET Compact Framework 編寫 IM 應用程式, MSDNhttp://msdn.microsoft.com/zh-cn/magazine/cc164240.aspx 2. Power Toys for .NET Compact Framework 3.5 開發WCF for CF 3.5 的工具包http://www.microsoft.com/downloads/details.aspx?familyid=C8174C14-A27D-4148-BF01-86C2E0953EAB&displaylang=en

 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.