2013-02-25 140 views
0

我正在使用LocalState文件夾爲我的Windows 8應用程序啓用緩存。爲了提供示例數據(應用程序使用web服務來收集數據),我想提供已經緩存的默認一堆數據。部署LocalState文件夾

我可以提供將在應用程序包中的LocalState的示例數據嗎?

回答

2

下面是一些示例JS代碼 - 應該能夠很容易地轉換爲.NET - 使用async/await來代替Promises。

WinJS.Application.local.exists('somedata.json').done(
       function (found) { 
        if (!found) { 
         return copyStartData('somedata.json'); 
        } 
       } 
      ); 

function copyStartData(copyfile) { 
     return Windows.ApplicationModel.Package.current.installedLocation.getFolderAsync('startdata').then(
      function (startData) { 
       return startData.getFileAsync(copyfile).then(
        function (file) { 
         if (file) { 
          return file.copyAsync(WinJS.Application.local.folder); 
         } 
        }); 
      }); 
    } 

該函數採用要從安裝包複製到用戶本地計算機的文件的名稱。

3

您可以將文件放入軟件包,然後在啓動時檢查本地文件夾中是否已有數據,如果不存在,請從軟件包存儲中複製/填充文件(請參閱CopyAsync) 。如果是這樣,什麼都不要做