Compartilhar via


Como personalizar o dicionário de análise do código

A análise de código usa um dicionário interno para verificar identificadores em seu código para erros de ortografia, nas caixas gramaticais, e nas outras convenções de nomenclatura das diretrizes de .NET Framework .Você pode criar um arquivo XML de dicionário personalizado para adicionar, remover, modificar ou termos, abreviações, e acrônimos ao dicionário interno.

Por exemplo, suponhamos que seu código continha uma classe nomeada DoorKnokker.A análise de código identificaria o como um nome composto de duas palavras: porta e knokker.Levantaria em um aviso que knokker esteve não digitado corretamente.Para forçar a análise de código para reconhecer a ortografia, você pode adicionar o termo knokker ao dicionário personalizado.

Para criar um dicionário personalizado

Crie um arquivo chamado CustomDictionary.xml.

Define as palavras personalizados usando a seguinte estrutura XML:

<Dictionary>
      <Words>
         <Unrecognized>
            <Word>knokker</Word>
         </Unrecognized>
         <Recognized>
            <Word></Word>
         </Recognized>
         <Deprecated>
            <Term PreferredAlternate=""></Term>
         </Deprecated>
         <Compound>
            <Term CompoundAlternate=""></Term>
         </Compound>
         <DiscreteExceptions>
            <Term></Term>
         </DiscreteExceptions>
      </Words>
      <Acronyms>
         <CasingExceptions>
            <Acronym></Acronym>
         </CasingExceptions>
      </Acronyms>
   </Dictionary>

Elementos do dicionário personalizado

Você pode modificar o comportamento do dicionário de análise de código adicionando termos como o texto interno dos seguintes elementos no dicionário personalizado:

Dicionário/palavras/reconhecidas/palavras

Para incluir um termo na lista de termos que o código identifica a análise digitado corretamente, o adiciona o termo como o texto interno de um dicionário/palavras/o elemento/confirmou palavra.Os termos no dicionário/palavras/os elementos reconhecidos/palavras não diferenciam maiúsculas de minúsculas.

Exemplo

<Dictionary>
      <Words>
         <Recognized>
            <Word>knokker</Word>
            ...
         </Recognized>
         ...
      </Words>
      ...
</Dictionary>

Os termos no dicionário/palavras/os nós são aplicados às seguintes regras para análise de código:

Dicionário/palavras/não reconhecido/palavras

Para excluir um termo da lista de termos que o código identifica a análise digitado corretamente, o adiciona o termo para excluir como o texto interno de um dicionário/palavras/elemento não reconhecido/palavras.Os termos no dicionário/palavras/elementos não reconhecido/palavras não diferenciam maiúsculas de minúsculas.

Exemplo

<Dictionary>
      <Words>
         <Unrecognized>
            <Word>meth</Word>
            ...
         </Unrecognized>
         ...
      </Words>
      ...
</Dictionary>

Os termos no dicionário/palavras/nó não reconhecido são aplicados às seguintes regras para análise de código:

O dicionário/palavras/substituiu/termo [@PreferredAlternate]

Para incluir um termo na lista de termos que o código identifica a análise tão substituído, adiciona o termo como o texto interno de um dicionário/palavras/o elemento/substituiu termo.Um termo obsoleto é uma palavra que sejam estar escrito corretamente mas não deve ser usado.

Para incluir um termo sugerido de backup no prompt, especifique a substituição do atributo de PreferredAlternate do elemento de termos.Você pode deixar o valor de atributo vazio se você não quiser sugerir uma substituição.

  • O termo substituído no dicionário/palavras elemento substituídos/termo não diferencia maiúsculas de minúsculas.

  • O valor do atributo de PreferredAlternate diferencia maiúsculas de minúsculas.Use exemplos de Pascal para substituições compostas.

Exemplo

<Dictionary>
      <Words>
         <Deprecated>
            <Term PreferredAlternate="LogOn">login</Term>
            ...
         </Deprecated>
         ...
      </Words>
      ...
</Dictionary>

Os termos no dicionário/palavras/substituíram o nó são aplicados às seguintes regras para análise de código:

Dicionário/palavras/composto/termo [@CompoundAlternate]

O dicionário interno identifica alguns termos como únicos, termos discretos em vez de um termo composto.Para incluir um termo na lista de termos que o código análise identificam como uma palavra compostas e especificar o uso de maiúsculas e minúsculas correta de termos, adicione o termo como o texto interno de um dicionário/palavras/elemento composto de/termo.No atributo de CompoundAlternate do elemento de termos, especifique as palavras individuais que compõem o termo composto coloque a primeira maiúscula a primeira letra de palavras individuais (exemplos de Pascal).Observe que o termo especificado no texto interno é adicionado automaticamente à lista de dicionário/palavras/DiscreteExceptions.

  • O termo substituído no dicionário/palavras elemento substituídos/termo não diferencia maiúsculas de minúsculas.

  • O valor do atributo de PreferredAlternate diferencia maiúsculas de minúsculas.Use exemplos de Pascal para substituições compostas.

Exemplo

<Dictionary>
      <Words>
         <Compound>
            <Term CompoundAlternate="CheckBox">checkbox</Term>
            ...
         </Compound>
         ...
      </Words>
      ...
</Dictionary>

Os termos no nó do dicionário/palavras/composto são aplicados às seguintes regras para análise de código:

Dicionário/palavras/DiscreteExceptions/termo

Para excluir uma condição na lista de termos que o código identifica a análise, como uma única palavra discretas quando o termo é verificado por regras de uso de maiúsculas e minúsculas em palavras compostas, adiciona o termo como o texto interno de um dicionário/palavras/elemento de DiscreteExceptions/termo.O termo no dicionário/palavras/elemento de DiscreteExceptions/termo não diferencia maiúsculas de minúsculas.

Exemplo

<Dictionary>
      <Words>
         <DiscreteExceptions>
            <Term>checkbox</Term>
            ...
         </DiscreteExceptions>
         ...
      </Words>
      ...
</Dictionary>

Os termos no nó do dicionário/palavras/DiscreteExceptions são aplicados às seguintes regras para análise de código:

Dicionário/acrônimos/CasingExceptions/acrônimo

Para incluir um acrônimo na lista de termos que o código análise identificam como digitado corretamente e indicar como o acrônimo quando o termo é verificado pela embalagem regras para palavras compostas, adicione o termo como o texto interno de um dicionário/acrônimos/elemento de CasingExceptions/acrônimo.O acrônimo no dicionário/acrônimos/elemento de CasingExceptions/acrônimo diferencia maiúsculas de minúsculas.

Exemplo

<Dictionary>
      <Acronyms>
         <CasingExceptions>
            <Acronym>NESW</Acronym>   <!-- North East South West -->
            ...
         </CasingExceptions>
         ...
      </Acronyms>
      ...
</Dictionary>

Os termos no nó do dicionário/acrônimos/CasingExceptions são aplicados às seguintes regras para análise de código:

  • CA1709: Identifiers should be cased correctly

Para aplicar um dicionário personalizado a um projeto

  1. Em Gerenciador de Soluções, use um dos seguintes procedimentos:

  2. Para adicionar um dicionário em um único projeto, clique com o botão direito do mouse no nome do projeto e clique em Adicionar Item Existente.Especifique o arquivo na caixa de diálogo de Adicionar Item Existente .

  3. Para adicionar um dicionário que é compartilhado entre dois ou mais projetos, localize o arquivo para compartilhar na caixa de diálogo de Adicionar Item Existente , clique na seta para baixo no botão de Adicionar e clique em Adicionar como vínculo.

  4. Em Gerenciador de Soluções, clique com o botão direito do mouse no nome de arquivo de CustomDictionary.xml e clique Propriedades.

  5. Na lista de Ação de Compilação , CodeAnalysisDictionaryselecione.

  6. Na lista de Copiar para diretório de saída , selecione Não copiar.