Compartilhar via


Demonstra Passo a passo: Analisando código gerenciado para defeitos de código

Nesta explicação passo a passo, você pode analisar um projeto para defeitos de código gerenciado usando a ferramenta de análise de código.

Este passo-a-passo irá você pelo processo de uso de análise de código para analisar seus assemblies de código gerenciado .NET quanto à conformidade com as diretrizes de design do Microsoft .NET estrutura.

Nesta explicação passo a passo, você:

  • Analisar e corrigir os avisos de defeito do código.

Pré-requisitos

Para analisar um projeto para defeitos de código gerenciado

  1. In Development Edition, em aberto solução ManagedDemo.

  2. selecionar o projeto ManagedDemo em O gerenciador de soluções.

  3. No menu Project, clique em Properties..

    A página de propriedades ManagedDemo é exibida.

  4. Click CodeAnalysis.

  5. Select Enable Code Analysis (defines CODE_ANALYSIS constant).

  6. Sobre o Arquivo menu, clicar Salvar itens selecionados e, em seguida, fechar as páginas de propriedades ManagedDemo.

  7. Sobre o Compilação menu, clicar Criar ManagedDemo.

    Os avisos de compilação do projeto ManagedDemo são relatados no erro Lista and Saída janelas.

Para corrigir violações de regra de análise de código

  1. Sobre o Modo de exibição menu, clicar Lista de Erros.

    Dependendo do analisar desenvolvedor escolhido, você terá que aponte para Outras janelas on the Modo de exibição menu e, em seguida, clicar erro Lista.

  2. In O gerenciador de soluções, clicar Mostrar todos os arquivos.

  3. Em seguida, expandir o nó Configuração e, em seguida, abra o arquivo AssemblyInfo.cs.

  4. Use a tabela a seguir para corrigir os avisos:

Avisos

Para corrigir o aviso

Marcar assemblies com CLSCompliantAttribute: Microsoft.Design: 'ManagedDemo' deve ser marcado com o CLSCompliantAttribute e seu valor deve ser true.

  1. Add the code usingSystem; to the AssemblyInfo.cs file.

  2. Em seguida, adicione o código [assembly: CLSCompliant(true)] ao participante do arquivo AssemblyInfo.cs.

  3. Crie o projeto.

Compilador CS3008 de aviso (nível 1).

  1. Alterar o nome do campo _item para ItemCount.

  2. Modificar public static int item { get { return _item; } } para retornar ItemCount.

  3. Crie o projeto.

Tipos de marca ISerializable com o SerializableAttribute: Microsoft.uso: Adicione um atributo [Serializable] digitar 'demo' sistema autônomo esse tipo implementa ISerializable.

  1. Adicionar o [Serializable ()] a classe de atributo demo.

  2. Crie o projeto.

Implementar construtores de exceção padrão: Microsoft.Design: Adicione o seguinte construtor a essa classe: demo(String) pública

  • Adicionar o construtor public demo (String s) : base(s) { } a classe demo.

Implementar construtores de exceção padrão: Microsoft.Design: Adicione o seguinte construtor a essa classe: demonstração pública (String, exceção)

  • Adicionar o construtor public demo (String s, Exception e) : base(s, e) { } a classe demo.

Implementar construtores de exceção padrão: Microsoft.Design: Adicione o seguinte construtor a essa classe: demonstração protegida (SerializationInfo, StreamingContext)

  1. Adicione o código using System.Runtime.Serialization; para o início do arquivo Class1.cs.

  2. Em seguida, adicione o construtor protected demo (SerializationInfo info, StreamingContext context) : base(info, context) { } to the class demo.

  3. Crie o projeto.

Implementar construtores de exceção padrão: Microsoft.Design: Adicione o seguinte construtor a essa classe: demo() pública

  1. Adicionar o construtor public demo () : base() { } a classe demo.

  2. Crie o projeto.

Identificadores devem ter o correto sufixo: Microsoft.Naming: Renomeie 'testCode.demo' até o participante de 'Exceção'.

  • alterar o nome da classe e seus construtores para DemoException.

Identificadores devem estar sendo corretamente: Microsoft.Naming: Corrigir o uso de maiúsculas e minúsculas do nome do namespace 'testCode'

  • Alterar o uso de maiúsculas e minúsculas do namespace testCode para TestCode.

Identificadores devem estar sendo corretamente: Microsoft.Naming: Corrigi o uso de maiúsculas e minúsculas do nome de membro 'item'.

  • Altere o nome do membro para Item.

Assemblies should have válidos fortes names devem ter nomes: Assine 'ManagedDemo' com uma chave de nome forte.

  1. Sobre o Projeto menu, clicar Propriedades ManagedDemo.

    As propriedades do projeto são exibidas.

  2. clicar Assinatura.

  3. Marque a caixa de seleção Sign the assembly.

  4. No escolher um arquivo de chave de nome de seqüência de caracteres lista, selecionar <New…>.

    The Criar chave de nome forte caixa de diálogo é exibida.

  5. No Nome do arquivo de chave, digite TestKey.

  6. Digite uma senha e, em seguida, clicar OK.

  7. Sobre o Arquivo menu, clicar Salvar itens selecionados e, em seguida, fechar as páginas de propriedades.

  8. Crie o projeto.

Excluir avisos de análise de código

Para excluir avisos de defeitos de código

  1. selecionar os avisos restantes no Lista de errose, em seguida, clicar com o botão direito do mouse e selecionar Suprimir mensagem (NS).

  2. Crie o projeto.

    Constrói o projeto sem avisos ou erros.