c # - Sådan gemmes data under AppData \ Roaming i stedet for AppData \ Local \ Packages

Indlæg af Hanne Mølgaard Plasc

Problem



Jeg udvikler en WPF aplication, der gemmer nogle json under AppData \ Roaming \ MyAppFolder. Under test i VS2017 gik alt som planlagt.


Jeg genererede the.appx til mit projekt, installeret og løb for at se, at ingen data blev gemt, hvor jeg forventede.
Efter at have brugt procmon fandt jeg ud af, at dataene faktisk blev gemt under AppData \ Local \ Packages \ Myapp\_pn7t59nnjk55e \ LocalCache \ Roaming


Jeg bruger Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) for at få mappebanen.



  1. Hvorfor nøjes det, når jeg kører min app efter installation med .appx?

  2. Er der en måde at faktisk gemme under AppData \ Roaming?

  3. Skal jeg virkelig bekymre mig om det?


Bedste reference


Dataene gemmes på den rigtige placering, og din app vil kunne læse/indlæse den uden problemer.


Det er her, hvor Windows 10 omdirigerer AppData til moderne applikationer, dvs. apps implementeret ved hjælp af en applikationspakke.