public static IList <Profile> FromSecrets(this IUserSecretsManager userSecretsManager) { var secrets = userSecretsManager.List(); if (!secrets.Any()) { return(new List <Profile>()); } var deployerSecrets = secrets.Where(x => x.Contains(SecretsKey)).Select(ToPlainJsonEntry); var joined = string.Join(",", deployerSecrets); var obj = JObject.Parse("{" + joined + "}"); var dict = obj.ToObject <Dictionary <string, string> >(); var unflattened = JsonFlattener.Unflatten(dict); if (unflattened == null) { return(new List <Profile>()); } var secret = unflattened.ToObject <Root>(); return(secret.Profiles); }
public static void ToSecrets(this IUserSecretsManager userSecretsManager, IList <Profile> secrets) { var serialized = JsonConvert.SerializeObject(new Root() { Profiles = secrets, }); userSecretsManager.Set(serialized); }