Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Feature] Create a system for RoamingSettings via the Graph #72

Closed
shweaver-MSFT opened this issue Mar 2, 2021 · 1 comment · Fixed by #77
Closed

[Feature] Create a system for RoamingSettings via the Graph #72

shweaver-MSFT opened this issue Mar 2, 2021 · 1 comment · Fixed by #77
Assignees
Milestone

Comments

@shweaver-MSFT
Copy link
Member

shweaver-MSFT commented Mar 2, 2021

Describe the problem this feature would solve

RoamingSettings have been deprecated by the platform but developers still need a way to save settings data that will roam with the user.

https://docs.microsoft.com/en-us/windows/deployment/planning/windows-10-deprecated-features

Describe the solution

We already have a prototype for roaming settings via extensions on the Graph user, as well as saving to files in OneDrive. We need a way to consume these from a single standpoint.

Something like:

var settings = new RoamingSettings(DataStore.OneDrive); // DataStore.UserExtensions

I chose to extend IObjectStorageHelper from WCT and replace the existing RoamingObjectStorageHelper

I like this setup because it includes consideration for scaling to other data storage types (KVP, Json file, etc.). It also gives us a graceful way to replace the existing RoamingObjectStorageHelper in WCT. I don't see option 1 being easy to build a system with.

Other info

I'd like to move these files to a separate package once PR #76 is merged in.

@ghost ghost added the needs triage 🔍 label Mar 2, 2021
@ghost
Copy link

ghost commented Mar 2, 2021

Hello shweaver-MSFT, thank you for opening an issue with us!

I have automatically added a "needs triage" label to help get things started. Our team will analyze and investigate the issue, and escalate it to the relevant team if possible. Other community members may also look into the issue and provide feedback 🙌

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
1 participant