diff --git a/src/code/SecretManagement.cs b/src/code/SecretManagement.cs index 2e9b6db..3424c09 100644 --- a/src/code/SecretManagement.cs +++ b/src/code/SecretManagement.cs @@ -1092,15 +1092,9 @@ private void WriteResults(SecretInformation[] results) if (results == null) { return; } // Ensure each vaults results are sorted by secret name. - var sortedList = new SortedDictionary(StringComparer.OrdinalIgnoreCase); - foreach (var item in results) - { - sortedList.Add( - key: item.Name, - value: item); - } + Array.Sort(results, new SecretInformationComparer()); - foreach (var item in sortedList.Values) + foreach (var item in results) { WriteObject(item); } diff --git a/src/code/Utils.cs b/src/code/Utils.cs index 3fba6e7..dd1b75f 100644 --- a/src/code/Utils.cs +++ b/src/code/Utils.cs @@ -324,6 +324,17 @@ private SecretInformation() #endregion } + + /// + /// Compares secret information by name. + /// + public class SecretInformationComparer : IComparer + { + public int Compare(SecretInformation x, SecretInformation y) + { + return string.Compare(x.Name, y.Name, StringComparison.Ordinal); + } + } #endregion