Dica
.NET Transformations em arquivos config separados

Algumas situações podem nos exigir trabalhar com arquivos config separados. Podemos, por exemplo, guardar toda a seção de string de conexões em um arquivo separado. No web.config original, apenas apontamos para o outro arquivo, com as strings de conexão utilizando o atributo "configSource". A tag no web.config fica como abaixo:

<connectionStrings configSource="strings.config" />

O desafio, porém, é como aplicar as web.config transformations com o conteúdo do web.config dividido em 2 ou mais arquivos através do uso dessa técnica. Especialmente as strings de conexão recebem valores diferentes em diferentes ambientes, tais como desenvolvimento, homologação e produção.

Existem formas de aplicar a web.config transformations no arquivo separado de string de conexão, fazendo algumas alterações na configuração de publicação, arquivo PUBXML. Porém é bem complexo de fazer e o resultado não é tão preciso.

Existe uma outra solução mais simples: Criar diferentes arquivos de string de conexão para cada ambiente (o que de qualquer forma teria que ser feito) e com as transformations alterar o atributo configSource.

Por exemplo, podemos inserir no arquivo web.release.config a seguinte transformação para alterar o nome do arquivo contido no atributo configSource:

<connectionStrings configSource="strings.Release.config" xdt:Transform="SetAttributes" />

Desta forma, ao invés de tentarmos transformar o arquivo com as strings de conexão, o que apesar de possível é bem complicado, apenas apontamos para um novo arquivo.

Búfalo Informática
e-mail: Contato@bufaloinfo.com.br
Telefones: (21) 99240-7281 (21) 99240-5134