Я разрабатываю приложение Windows Universal, которое собирает результаты гонок. Он сохраняет результат каждой гонки в базе данных sql-lite в папке приложения, чтобы пользователь мог просматривать предыдущие результаты. Однако у меня есть дополнительные требования для сохранения и открытия результатов гонки.Как обрабатывать импорт и экспорт данных из приложения Windows Universal
- Мне нужно иметь возможность экспортировать результаты гонки в виде CSV-файла, чтобы они могли быть открыты сторонним приложением, которое может работать на отдельной машине в другой операционной системе.
- Мне нужно иметь возможность экспортировать результаты в виде HTML-файла, который можно загрузить/добавить на собственный веб-сайт пользователя.
- Мне нужен пользователь, чтобы иметь возможность распечатывать результаты (о чем я думал, просто можно было сделать, распечатав файл HTML из браузера)
- Я хотел бы, чтобы у пользователя была возможность импортировать результаты гонка, созданная моим собственным унаследованным приложением в моем собственном формате.
Похоже, однако, что мы ограничены в приложении Windows Universal, чтобы сохранять файлы только в очень специфических папках в особых обстоятельствах, если мы запросили эту возможность приложения. Поэтому я получаю доступ к отказам в ошибках как для сохранения, так и для чтения файлов с помощью FileOpenPicker и FileSavePicker.
Я думаю, мне, вероятно, нужно просмотреть экспорт и импорт результатов по-другому, но после многих поисков я не смог найти правильное и рекомендуемое решение. Итак, вопрос в том, как я должен обрабатывать импорт и экспорт результатов? Должен ли я использовать папку документов пользователя или их OneDrive? Мне нужно создать веб-приложение для моего приложения, чтобы пользователь мог хранить результаты в облаке и загружать их оттуда?
Я действительно пытался это сделать на C#, однако получаю исключения Access Denied. Я думал, что это связано с ограничениями, изложенными в этом документе ... https://msdn.microsoft.com/en-us/windows/uwp/files/file-access-permissions –
Нет. В этом разделе темы доступны без использования файловых сборщиков. Просто с декларацией в манифесте. –
Да, абсолютно правильно. Я использовал имя файла, выбранного файловым файлом FileSavePicker, а затем сохранил мой файл через новый объект StorageFile, который не работал. Чтобы избежать ошибки Access Denied, вы должны использовать объект StorageFile, возвращаемый FileSavePicker! –