Windows Phone 的資料存放區方式總結

來源:互聯網
上載者:User
文章目錄
  •  一、儲存方式概覽
  • 二、詳細介紹
  • 三、各種方式的適用場合

討論範圍:介於WindowsPhone8的SDK發布在即,出於文章時效的考慮,需要說明本文只討論Windows Phone 7 下的資料存放區方式,但我想內容同樣適用於WindowsPhone8,只是WindowsPhone8會帶來新的資料存放區方式。

 

 一、儲存方式概覽
  1. 本地項目內檔案:被編譯成資源檔(Resource)或內容(Content)。
  2. 隔離儲存區 (Isolated Storage)(Isolated Storage)
  3. 本機資料庫
  4. Web Service/ WCF
  5. Cloud/ Azure
二、詳細介紹

1、本地項目內檔案

    可以通過設定檔案的產生方式(BuildAction)將檔案設定成資源(Resource)被編譯到二進位代碼裡,優點是隨時都能用,但是可能導致啟動時載入過慢。在代碼中,可以用Application.GetResourceStream來讀取。一般用這幾種場合:不考慮程式的啟動時間;不用更新資源檔(因為編譯進項目了就別指望了);減少程式的依賴項。  

    可以通過設定檔案的產生方式(BuildAction)將檔案設定成內容(Content)被編譯進專案檔,但不在二進位代碼裡,優點是效率高,能被多個程式包共用。在代碼中,可以用XElement.Load來讀取。一般用這幾種場合:考慮程式的啟動時間;需要更新資源檔(因為編譯進項目了就別指望了)。

2、隔離儲存區 (Isolated Storage)

    如果要儲存使用者的資料,可以用隔離儲存區 (Isolated Storage),在Silverlight和WindowsPhon裡都沒有直接儲存系統檔案的介面,但是可以用隔離儲存區 (Isolated Storage)將儲存在使用者的裝置上。可以用索引值對的方式(IsolatedStorageSettings類),也可以用檔案的方式(IsolatedStorageFile類)

3、本機資料庫

SQLCE:自己家的便攜資料庫格式,(7.1才有的)

SQLITE:第三方的便攜資料庫格式。

通過本人實際使用的感覺發現對多線程的讀寫處理都不怎麼好,很容易異常,當然也可能我對其特性理解不夠深入。

4、Web Service

可能有以下幾種格式:

REST,POX,JSON,OData,SOAP。

而存取方式也有以下幾種方式:

Http類:可以直接用HttpWebRequest或WebClient類來調用WebService,通過HTTP協議向WebService發送請求,得到xml或json格式的返回資料。

引用WCF服務:WCF其實是一個WebService架構,支援多種協議(包括http,tcp),支援多種格式(soap,xml,atom)

使用OData用戶端: 其實也叫WCF資料服務,以前叫ADO.NET資料服務,一個以RSET形式存取現有資料的架構。WCF資料服務提供OData格式的資料,比如WindowsPhone與SharePoint互動時,SharePoint提供WCF資料服務,WCF資料服務處理所有http互動,序列化和其他的任務,意思是說App能直接通過http協議對遠端資料執行増刪改查,哪怕跨域也行。OData for WindowsPhone用戶端可能在codeplex上找到

5、Azure

也可以用Windows Azure來存取資料,但是免費的服務是有限制的,Azure在雲端服務器上提供持久化的資料存放區,操作方式和WebService差不多。

三、各種方式的適用場合
編譯成資源檔 將唯讀資料嵌入二進位程式
編譯成內容檔案 不用重新編譯就能更新資料
隔離儲存區 (Isolated Storage)     存取使用者資訊
http類 用第三方的REST或POX服務存取資料
http類 擷取RSS訂閱
用代理類的WCF 從SOAP服務儲存資料  
WCF 從Silverlight中將現有的類發布成服務
OData   存取Odata資料
Azure 儲存大量資料
   
相關文章

聯繫我們

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