Gerando código a partir de uma linguagem específica do domínio

As Ferramentas de Linguagem Específica de Domínio da Microsoft fornecem uma maneira poderosa de gerar código, documentos, arquivos de configuração e outros artefatos de dados representados em modelos. Com o uso das Ferramentas de Linguagem Específica de Domínio, você pode criar um conjunto de classes que representam seus dados e pode escrever seus modelos de texto em classes cujos nomes e propriedades reflitam esses dados.

Por exemplo, a Fabrikam tem um arquivo XML de nomes de clientes e endereços de email. Seus desenvolvedores criam um modelo no qual Customer é uma classe, com propriedades de nome e email. Eles gravam vários modelos de texto para processar os dados, incluindo este fragmento que produz uma tabela de todos os clientes como parte de uma página HTML:

<table>
<# foreach (Customer c in ContactList) {  #>
  <tr><td> <#= c.FullName #> </td>
      <td> <#= c.EmailAddress #> </td> </tr>
<# } #>  </table>

Quando o banco de dados do cliente é processado, o arquivo XML é lido no repositório de modelos. Um processador de diretiva, criado pelo uso de Ferramentas de Linguagem Específica de Domínio, disponibiliza a classe Customer para o código no modelo de texto. Muitos modelos de texto podem ser executados em relação ao mesmo repositório.

Os modelos de texto são essenciais para Ferramentas de Linguagem Específica de Domínio. Eles são usados a fim de gerar o código-fonte para os elementos do modelo de domínio, bem como para o VSPackage e os controles usados na integração das ferramentas ao Visual Studio.

Esta seção discute algumas das maneiras de criar, modificar e depurar modelos de texto usados nas Ferramentas de Linguagem Específica de Domínio.

Nesta seção

Acessando modelos a partir de modelos (templates) de texto
Fornece informações básicas sobre como fazer referência a uma linguagem específica de domínio em modelos de texto.

Instruções passo a passo: depurando um modelo (template) de texto que acessa um modelo
Descreve como solucionar problemas e fazer depuração em um modelo de texto que se refere a um idioma específico do domínio.

Instruções passo a passo: conectando um host a um processador de diretriz gerado
Descreve como conectar um host personalizado a um processador de diretiva gerado.

O comando DslTextTransform
Descreve o arquivo de comando que executa o executável TextTransform na linha de comando para modelos de texto que fazem referência a linguagens específicas de domínio.

Referência

Gravando um modelo de texto T4
Fornece a sintaxe de diretivas de modelo de texto e blocos de controle.