2013-02-25 3 views
0

Я использую папку LocalState, чтобы включить кеширование для моего приложения Windows 8. Чтобы предоставить пример данных (приложение использует веб-сервис для сбора своих данных), я хотел бы предоставить набор данных, уже кэшированных по умолчанию.Развертывание папки LocalState

Могу ли я предоставить образцы данных для LocalState, которые будут в пакете приложений?

ответ

2

Вот пример кода JS - должен иметь возможность конвертировать в .NET довольно легко - используйте async/wait вместо 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) , Если да, ничего не делайте.

Смежные вопросы