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);
        }