Como verifico se uma Configuração de aplicativo está disponível?
ou seja, app.config
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<appSettings>
<add key ="someKey" value="someValue"/>
</appSettings>
</configuration>
e no codefile
if (ConfigurationManager.AppSettings.ContainsKey("someKey"))
{
// Do Something
}else{
// Do Something Else
}
c#
appsettings
configurationmanager
bitcycle
fonte
fonte
Dim configValue As String = Util.IsNull(ConfigurationManager.AppSettings.Get("SettingName"), String.Empty)
fonte
Valor padrão retornado com segurança via genéricos e LINQ.
Utilizado da seguinte forma:
fonte
ConfigurationManager.AppSettings
nãoAny(key => key == MyKey
fazusing System.ComponentModel;
declaração à sua classe para apoiar o uso daTypeDescriptor
classe.fonte
Se a chave que você está procurando não estiver presente no arquivo de configuração, você não poderá convertê-la em uma string com .ToString () porque o valor será nulo e você receberá uma "Referência de objeto não definida para uma instância de um objeto ". É melhor ver primeiro se o valor existe antes de tentar obter a representação da string.
Ou, como o Code Monkey sugeriu:
fonte
As opções superiores oferecem flexibilidade para todos os tipos, se você souber o tipo de chave, tente analisá-las
bool.TryParse(ConfigurationManager.AppSettings["myKey"], out myvariable);
fonte
Eu acho que a expressão LINQ pode ser melhor:
fonte
ConfigurationManager.AppSettings
nãoAny(key => key == MyKey
Gostei da resposta do codebender , mas precisava que ele funcionasse em C ++ / CLI. Foi assim que acabei. Não há uso do LINQ, mas funciona.
fonte
Usar a nova sintaxe c # com o TryParse funcionou bem para mim:
fonte