Mostrando postagens com marcador Visual Studio. Mostrar todas as postagens
Mostrando postagens com marcador Visual Studio. Mostrar todas as postagens

23 de jul. de 2011

Transformation de web.config

ultimate_bumblebee

Transformation de arquivos de configuração é uma feature que surgiu com o Visual Studio de 2010. São arquivos de configurações que complementam o arquivo de configuração original. Esse complemento pode ser a adição, remoção e a transformação de tags do arquivo original.

Esses complementos são bem vindos quando precisamos gerar builds para ambientes distintos. Se sua empresa trabalha com cenários de testes, homologação, produção, etc… Pode gerar um transformation para cada um desses cenários, alterando a tag de connection string com o banco de dados por exemplo.

Ao criarmos um projeto web no Visual Studio, temos de cara as configurações de debug e release.

1

Ao abrir o arquivo de release, podemos ver que, diferentemente do web.config, o web.release.config não tem tantas tags, apenas instruções para as transformações das tags desejadas.

2

Para criamos mais uma variação do web.config, primeiro criamos um cenário:

3

4

Durante a criação definiremos o nome do ambiente, e também podemos definir se ele se baseará em um ambiente existente.

5

Com o ambiente criado, podemos adicionar o arquivo de configuração desse ambiente.

6

7

Vamos abrir o arquivo original e adicionarmos algumas configurações.

8

Observe a origem do web.config original. Ele já veio com connection string, e adicionei duas "appSettings".

Agora, definiremos o arquivo web.teste.config assim:

<?xml version="1.0"?>

<configuration xmlns:xdt="http://schemas.microsoft.com/XML-Document-Transform">   <connectionStrings>     <add xdt:Transform="RemoveAll" />   </connectionStrings>   <appSettings>     <add key="Numero1" value="2" xdt:Transform="Replace" xdt:Locator="Match(key)"/>     <add key="Numero2" value="3" xdt:Transform="Replace" xdt:Locator="Match(key)"/>   </appSettings>   <system.web>     <compilation xdt:Transform="RemoveAttributes(debug)" />   </system.web>    </configuration>



Regras para o tranformation:




  • Sempre respeite a hierarquia da tag, no exemplo das tags "Numero1" e "Numero2", elas tem que estar dentro da tag "appSettings".


  • Para aplicar o transformation tem que usar o atributo "xdt:Transform".


  • Clique aqui para obter vários exemplos de sua aplicação.



No exemplo citado foram removidas qualquer connection string pelo "RemoveAll" e alteradas ("Replace") algumas configurações do "appSettings", que foram localizadas pelo atributo "key" ("Match(key)").



Vamos gerar o build para ver se funciona?



Então gere uma publicação:



9



10



Reparem na imagem acima, que a build configuration é a Teste, que acabamos de criar.



Após publicarmos, olhem o resultado:



11



12



Temos um novo web.config transformado/mesclado.



E isso se reproduz quando utilizamos o mecanismo de build do TFS. Mas esse caso fica para a próxima! Smiley de boca aberta

31 de mai. de 2010

IntelliTrace no VS 2010 – Vontando no Tempo #copamicrosoft

image

Pessoal, como um dos 60 finalistas da Copa de Talentos Microsoft, tive a oportunidade de produzir um vídeo, átipicamente divertido, sobre uma novidade do Visual Studio 2010: O IntelliTrace.

Para quem não conhece, o IntelliTrace é uma ferramenta que incrementa o Debugging de código, de tal forma que você pode avançar e também retroceder a execução da aplicação. Além disto éla rastreia toda a execução de threads e eventos dentro do código (como lançamento de exceptions, execução de códigos remotos, execução do asp, etc.).

Me classificando, ou não, para a final, vale a pena dar uma conferida nesta primazia da tecnologia, que agiliza, e muito, a detecção de adversidades dentro dos códigos. Gostaria então de compartilhar com vocês este vídeo:

Gostaria de agradecer minha namorada (Thaisa Silva), minha família e amigos colaboradores da WRA, pelo apoio.

Por enquanto é isso pessoal… be happy ^^