@fralik

Как сохранять пользовательские данные из C# в современных windows приложениях (store, msix)?

Есть приложение (.net core 3.1), которое упаковано с помощью msix и должно распространяться через windows store. При запуске приложения мне нужно скачать несколько файлов из интернета. Куда их можно сохранить?
Документация говорит только, что приложение запускается в изолированном контейнере. Я пробовал писать в
Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData)
, но получаю aceess denied. На тестовой машине этот путь резолвится в C:\Program Files\WindowsApps\..., а туда, как раз, писать и нельзя.
  • Вопрос задан
  • 57 просмотров
Решения вопроса 1
@fralik Автор вопроса
В UWP есть функция, которая возвращает папку доступную для записи. Но у меня сама программа написана на .net core, так что этот вариант отпадает. То, что она запускается как UWP - не помогает.

Нашел документацию, которая описывает два метода:
  1. Можно писать и читать через Environment.SpecialFolder;
  2. Можно читать файлы, добавленые в проект.


Проблема, как это часто бывает, была в моем коде. Вернее в библиотеке, которую я использую. Она скачивает файлы через консольную утилиту, а это запрещено для приложений UWP. Если бы не это, то я мог бы писать в SpecialFolder, а так придется добавить все нужные файлы в пакет.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
@antonwx
В %appdata%\yourAppName?
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы