Por que as pessoas recomendam consistentemente o uso de appConfig em vez de usar arquivos de configurações? (.LÍQUIDO)

Muitas vezes vejo a resposta à pergunta: "Como devo armazenar as configurações no meu aplicativo .NET?" é editar o arquivo app.config adicionando manualmente entradas ao app.config (ou web.config) da seguinte forma:

<configuration> 
  <appSettings>
    **<add key="ConfigValueName" value="ABC"/>**
  </appSettings>
</configuration>

Então, acessando-os como:

string configValue = Configuration.AppSettings["ConfigValueName"];

Vou me referir à abordagem descrita acima como a abordagem "app.config". Muito raramente vejo pessoas recomendando adicionar um arquivo "Configurações" ao projeto. Eu já vi isso várias vezes na web e no stackoverflow ... Estou começando a me perguntar se estou perdendo alguma coisa ... porque não sei por que você usaria esse método usando "Configurações " Arquivo. Eu não entrei no .NET até o VS2005, então uma teoria que eu tenho é como as coisas foram feitas no VS2003 e as pessoas nunca mudaram.

Exemplos de pessoas que recomendam a abordagem app.config:

Maneira mais simples de ter um arquivo de configuração em um aplicativo C # do Windows FormsPráticas recomendadas: como devo armazenar as configurações em c # (formato / tipo)?

Do meu ponto de vista existemseguintes vantagens da abordagem "Arquivo de configurações":

Pode ser usado para ambas as configurações do aplicativo (aquelas que são comuns a todos os usuários) e configurações do usuário da mesma interface.Capacidade de usar o suporte ao designer de configurações no visual studio. Menos propenso a erros, em seguida, editar um arquivo XML diretamente IMHO.Refatoração - você pode renomear um nome de configuração específico e ele atualizará automaticamente as referências em seu código.Verificação do tipo de compilação.Suporte de conclusão automática.Capacidades da grade da propriedade. Eu descobri que o controle PropertyGrid é uma maneira muito fácil de fazer um formulário de opções rápidas. Você acabou de fazerpropertyGrid1.SelectedObject = Settings1.Default; e pronto.

Caso você não tenha certeza do que quero dizer com a abordagem do arquivo "Configurações", consulteesta postagem que é um dos poucos exemplos em que alguém recomenda usar arquivos de configurações em vez de app.confg.

EDIT: Por favor, entenda: A intenção deste tópico é descobrir por que as pessoas usariam a abordagem app.config descrita acima sobre a abordagem do arquivo de configurações. Eu encontrei as limitações da abordagem do arquivo de configurações e fui forçado a rolar minha própria solução personalizada às vezes.Essa é uma discussão totalmente diferente.

questionAnswers(7)

yourAnswerToTheQuestion