0

LocalStateフォルダーを使用して、Windows8アプリケーションのキャッシュを有効にしています。サンプルデータを提供するために(アプリケーションはWebサービスを使用してデータを収集します)、すでにキャッシュされているデフォルトのデータの束を提供したいと思います。

アプリケーションパッケージに含まれるLocalStateのサンプルデータを提供できますか?

4

2 に答える 2

3

ファイルをパッケージに入れ、起動時にローカルフォルダにすでにデータがあるかどうかを確認します。ない場合は、パッケージストレージからデータをコピー/入力します(たとえば、 CopyAsyncを参照)。もしそうなら、何もしません。

于 2013-02-25T14:47:57.450 に答える
2

サンプルの JS コードを次に示します。.NET にかなり簡単に変換できるはずです。Promises の代わりに async/await を使用します。

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);
                        }
                    });
            });
    }

この関数は、インストール パッケージからユーザーのローカル マシンにコピーするファイルの名前を受け取ります。

于 2013-02-25T15:31:52.037 に答える