@@ -20,13 +20,13 @@ namespace Microsoft.Configuration.ConfigurationBuilders
2020 /// </summary>
2121 public class AzureKeyVaultConfigBuilder : KeyValueConfigBuilder
2222 {
23- #pragma warning disable CS1591 // No xml comments for tag literals.
23+ #pragma warning disable CS1591 // No xml comments for tag literals.
2424 public const string vaultNameTag = "vaultName" ;
2525 public const string connectionStringTag = "connectionString" ;
2626 public const string uriTag = "uri" ;
2727 public const string versionTag = "version" ;
2828 public const string preloadTag = "preloadSecretNames" ;
29- #pragma warning restore CS1591 // No xml comments for tag literals.
29+ #pragma warning restore CS1591 // No xml comments for tag literals.
3030
3131 private string _vaultName ;
3232 private string _connectionString ;
@@ -62,9 +62,18 @@ protected override void LazyInitialize(string name, NameValueCollection config)
6262 if ( String . IsNullOrWhiteSpace ( _uri ) )
6363 {
6464 if ( String . IsNullOrWhiteSpace ( _vaultName ) )
65+ {
66+ if ( Optional )
67+ {
68+ return ;
69+ }
70+
6571 throw new ArgumentException ( $ "Vault must be specified by name or URI using the '{ vaultNameTag } ' or '{ uriTag } ' attribute.") ;
72+ }
6673 else
74+ {
6775 _uri = $ "https://{ _vaultName } .vault.azure.net";
76+ }
6877 }
6978 _uri = _uri . TrimEnd ( new char [ ] { '/' } ) ;
7079
@@ -84,7 +93,8 @@ protected override void LazyInitialize(string name, NameValueCollection config)
8493 _kvClient = null ;
8594 }
8695
87- if ( _preload ) {
96+ if ( _preload )
97+ {
8898 _allKeys = GetAllKeys ( ) ;
8999 }
90100 }
@@ -175,7 +185,9 @@ private async Task<SecretBundle> GetValueAsync(string key)
175185
176186 SecretBundle secret = await _kvClient . GetSecretAsync ( _uri , vKey . Key ) ;
177187 return secret ;
178- } catch ( KeyVaultErrorException kve ) {
188+ }
189+ catch ( KeyVaultErrorException kve )
190+ {
179191 // Simply return null if the secret wasn't found
180192 if ( kve . Body . Error . Code == "SecretNotFound" || kve . Body . Error . Code == "BadParameter" )
181193 return null ;
0 commit comments