Pergunta

Eu quero criar uma tarefa MSBuild personalizada que muda meus .cs arquivos antes de serem compilados pela csc.exe (mas, é claro, que não modificá-los no lugar - Eu não quero arquivos de origem reais tocado) . Estou ciente de PostSharp e outras estruturas AOP para .NET e eles não são uma opção para este projecto específico, mais eu gostaria de saber como fazer isso.

O que exatamente eu tenho que fazer para chegar a este trabalho?

Graças Richard

Foi útil?

Solução

Dado o seu restrições Eu acho que você pode fazer o seguinte:

  1. Criar tarefa personalizada que aceita a lista de cs arquivos para se adaptar antes de compilação
  2. A tarefa personalizada adapta a lista de arquivos recebidos e cria-los no disco
  3. A tarefa personalizada define a lista de arquivos alterados na saída parâmetro
  4. A saída da tarefa substituiria o cs arquivos originais da lista
  5. A compilação é feita contra os arquivos alterados.

O passo 4 garante que os arquivos que eventualmente são compilados são os que foram alteradas por sua tarefa personalizada.

Você vai dependem fortemente do ITaskItem interface para o trabalho.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top