windows 8 開發 Application Data

來源:互聯網
上載者:User

一、Application Data簡介

  Applicaion Data相當於案頭應用的註冊表,儲存一些使用者配置資訊,如運行時狀態,使用者喜好等,需要注意的時,當卸載應用時,這些資料會被刪除,所以不要儲存重要資料。

  Applicaion Data即使在應用程式更新以後也不會丟失,有一個版本控制。

二、按用途分類

  •   local 本機資料  只儲存在當前裝置.
  •   roaming 漫遊資料 安裝了的此使用者的應用都可以同步。windows會自動幫你同步資料到微軟的雲端服務器,但是會限制大小。如果使用者30天內不用這些資料(例如程式卸載),會被伺服器刪除。
  •   temporary 臨時資料  隨時都可能被系統刪除的資料.

三、按儲存方式分類 

  App settings

  •   用來儲存配置資料,最深32層,不限數量,可以儲存在本地且可以漫遊。
  •   AppSettings支援除二進位外的所有WinRT資料格式,如果儲存位元據得用檔案。
  •   系統只驗證資料格式和長度,不驗證資料是否正確。

  用ApplicationData.LocalSettings這個靜態屬性來取得ApplicationDataContainer類類型的配置。

  App Files

  •   根目錄下有三個系統自訂的檔案夾:本地,漫遊,臨時。
  •   可以自己建檔案夾,但是最多不超過32層,同樣不限數量。

     用ApplicationData.LocalFolder這個靜態屬性來取StorageFolder類型的檔案。

四、程式碼範例

  儲存本機資料

        ApplicationDataContainer localSettings = ApplicationData.Current.LocalSettings;//儲存單一配置的控制代碼        ApplicationDataCompositeValue composite = new ApplicationDataCompositeValue();//儲存多項配置控制代碼        StorageFolder localFolder = ApplicationData.Current.LocalFolder;//隱藏檔控制代碼

      localSettings.Values["exampleSetting"] = "Hello Windows";;//儲存單一配置
      composite["intVal"] = 1;
      composite["strVal"] = "string";
      localSettings.Values["exampleCompositeSetting"] = composite;//儲存多項配置

 

  建立配置層級

ApplicationDataContainer container =    localSettings.CreateContainer("exampleContainer", ApplicationDataCreateDisposition.Always);if (localSettings.Containers.ContainsKey("exampleContainer")){   localSettings.Containers["exampleContainer"].Values["exampleSetting"] = "Hello Windows";}

  讀取配置  

  

Object value = localSettings.Values["exampleSetting"];//a settingApplicationDataCompositeValue composite =    (ApplicationDataCompositeValue)localSettings.Values["exampleCompositeSetting"];if (composite == null){   // No data}else{   // Access data in composite["intVal"] and composite["strVal"]}bool hasContainer = localSettings.Containers.ContainsKey("exampleContainer");bool hasSetting = false;if (hasContainer){   hasSetting = localSettings.Containers["exampleContainer"].Values.ContainsKey("exampleSetting");}

  刪除配置

localSettings.Values.Remove("exampleSetting");//ApplicationDataContainerSettings.Remove localSettings.Values.Remove("exampleCompositeSetting");//ApplicationDataCompositeValue.Remove localSettings.DeleteContainer("exampleContainer");//ApplicationDataContainer.DeleteContainer 

 

 

相關文章

聯繫我們

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