Como: Valide.NET Code contra os diagramas de camada

Este tópico se aplica a:

Visual Studio Ultimate

Visual Studio Premium

Visual Studio Professional

Visual StudioExpress

O tópico é aplicável O tópico é aplicável O tópico não é aplicável O tópico não é aplicável

Validar o código de um diagrama de camada o ajuda a impor restrições de arquiteturais no código, conforme ela evolui. Quando você executa essa tarefa, as dependências no código são comparadas com dependências no diagrama. Camada de validação também pode ajudar com as seguintes tarefas:

  • Consulte as diferenças entre o código existente e o seu design pretendido.

  • Localize o código que não estiverem organizado conforme pretendido ou que tenha dependências indesejáveis.

  • Localize as dependências que podem ser afetadas por alterações propostas.

    Por exemplo, você pode editar o diagrama de camada para mostrar possíveis alterações de arquitetura e valide o código para ver as dependências afetadas. Para obter mais informações, consulte Como: Crie diagramas de camada de artefatos e Diagramas de camada: Diretrizes.

  • Refatorar ou migrar o código para um design diferente.

    Localize o código ou dependências que ainda exigem o trabalho ao mover o código para uma arquitetura diferente.

Antes de validar o código, o Visual Studio solução deve incluir o projeto de modelagem de pelo menos um que tem um diagrama de camada. O diagrama de camada descreve a arquitetura do sistema e organiza os namespaces, projetos e outros artefatos em grupos lógicos, abstract ou camadas. Essas camadas descrevem os principais componentes do sistema ou as tarefas que realiza a esses artefatos. Definir essas camadas, vinculá-las artefatos e descrever as dependências pretendidas entre esses artefatos.

ObservaçãoObservação

Há determinados tipos de artefatos que você pode vincular a camadas, mas que não oferecem suporte a validação de diagrama de camada. Para ver se o artefato oferece suporte à validação, abra Explorer de camada para examinar o Oferece suporte à validação a propriedade do vínculo artefato. Para obter mais informações, consulte artefatos que fazer não suporte validação.

Para obter mais informações sobre como criar diagramas de camada, consulte os seguintes tópicos:

Para validar o código c ou C++, baixe e instale Microsoft Visual Studio 2010 Visualization and Modeling Feature Pack.

Para obter mais informações, consulte Como: Validar a códigos c e C++ contra os diagramas de camada.

Neste tópico.

  • Adicione projetos manualmente para validação e assemblies.

  • Valide o código manualmente a qualquer momento.

  • Valide código automaticamente durante uma compilação local.

  • Valide código automaticamente durante o Team Foundation Build.

  • A solução de problemas com a validação da camada.

Adicionar manualmente os Assemblies e projetos para validação

O Referências de camada pasta dentro de um projeto de modelagem contém referências aos assemblies e projetos que são analisados durante a validação. Quando você arrasta itens para o diagrama de camada, referências a assemblies ou projetos de correspondentes são adicionadas automaticamente a essa pasta. Você também pode adicionar projetos manualmente para validação e assemblies sem arrastando-os para o diagrama de camada.

Para adicionar projetos manualmente para validação e assemblies

  1. Em Solution Explorer, clique com o botão direito no projeto de modelagem ou o Camada de referênciapasta s e clique Add Reference.

  2. No Add Reference caixa de diálogo, selecione os assemblies ou projetos e clique em OK.

Validar o código manualmente a qualquer momento.

Para validar o código de um diagrama aberto de camada

  1. Clique com o botão direito na superfície de diagrama e, em seguida, clique em Arquitetura validar.

    ObservaçãoObservação

    Por padrão, o Build Action no arquivo de diagrama (.layerdiagram) da camada for definida como Validar para que o diagrama seja incluído no processo de validação.

    O Error List janela relata quaisquer erros que ocorram. Para obter mais informações sobre erros de validação, consulte Noções básicas sobre os erros de validação de camada.

  2. Para exibir a origem de cada erro, clique duas vezes o erro de Error List janela.

    ObservaçãoObservação

    Visual Studiopode mostrar um gráfico de dependência em vez da origem do erro. Isso ocorre quando o código tem uma dependência em um assembly que não for especificado, o diagrama de camada, ou o código está faltando uma dependência que é especificada pelo diagrama de camada. Analise o gráfico de dependência ou o código para determinar se a dependência deve existir. Para obter mais informações sobre gráficos de dependência, consulte Como: Procurar e navegar por documentos do gráfico.

  3. Para gerenciar erros, consulte Erros de validação de gerenciar.

Para validar o código a partir do prompt de comando

  1. Abrir o Visual Studio o prompt de comando.

    Para abrir o prompt de comando, clique em Iniciar, aponte para Todos os programas, aponte para Microsoft 2010 de Visual Studio, aponte para Visual Studio Toolse, em seguida, clique em Visual Studio Prompt de comando de 2010.

  2. Escolha uma das seguintes opções:

    • Para validar o código de um projeto de modelagem específicos na solução, execute MSBuild com a seguinte propriedade personalizada.

      msbuild <FilePath+ModelProjectFileName>.modelproj
      /p:ValidateArchitecture=true
      

      - ou -

      Navegue até a pasta que contém a modelagem do projeto (.modelproj) de arquivo e o diagrama de camada e, em seguida, executar MSBuild com a propriedade personalizada a seguir:

      msbuild /p:ValidateArchitecture=true 
      
    • Para validar o código de todos os projetos de modelagem da solução, execute MSBuild com a propriedade personalizada a seguir:

      msbuild <FilePath+SolutionName>.sln /p:ValidateArchitecture=true 
      

      - ou -

      Navegue até a pasta de solução, o que deve conter um projeto de modelagem que contém um diagrama de camada e execute MSBuild com a propriedade personalizada a seguir:

      msbuild /p:ValidateArchitecture=true
      

    Quaisquer erros que ocorram serão listados. Para obter mais informações sobre MSBuild, consulte MSBuild e Tarefa do MSBuild.

Para obter mais informações sobre erros de validação de compreensão, consulte Noções básicas sobre os erros de validação de camada.

Gerenciar erros de validação

Durante o processo de desenvolvimento, você talvez queira suprimir alguns dos conflitos relatados durante a validação. Por exemplo, você talvez queira Suprimir erros que você já está abordando ou que não sejam relevantes para seu cenário em particular. Quando você suprime um erro, é uma boa prática para efetuar o logon de um item de trabalho em Team Foundation.

Para criar um item de trabalho para um erro de validação

  • No Error List janela, o erro com o botão direito, aponte para Create Work Iteme clique no tipo de item de trabalho que você deseja criar.

Use estas tarefas para gerenciar erros de validação de Error List janela:

Para

Siga estas etapas.

Suprimir erros selecionados durante a validação

Um ou vários erros selecionados com o botão direito, aponte para Erros de validação de gerenciare em seguida, clique em Suprimir erros.

Os erros de suprimidas aparecem com um tachado. Quando você executa a validação da próxima vez, esses erros não aparecerá.

Erros suprimidos são controlados em um arquivo de .suppressions para o arquivo de diagrama de camada correspondente.

Parar a supressão de erros selecionados

O erro suprimido selecionado ou erros de atalho, aponte para Gerenciar erros de validaçãoe, em seguida, clique em Erros de interrupção de supressão de.

Erros suprimidos selecionados aparecerão quando você executa a validação da próxima vez.

Restaurar suprimidos todos os erros de Error List janela

Clique com o botão direito em qualquer lugar no Error List janela, aponte para Erros de validação de gerenciare, em seguida, clique em Mostrar todos os erros suprimidas.

Ocultar erros suprimidos tudo a partir de Error List janela

Clique com o botão direito em qualquer lugar no Error List janela, aponte para Erros de validação de gerenciare, em seguida, clique em Ocultar todos os erros suprimidas.

Validar código automaticamente durante uma compilação Local

Use esse método quando você deseja validar o código automaticamente toda vez que você executar uma compilação local.

Para validar o código automaticamente a partir de uma compilação local

  • Use um editor de texto para abrir o projeto de modelagem (.modelproj) de arquivo e inclua a seguinte propriedade:
<ValidateArchitecture>true</ValidateArchitecture>

- ou -

  1. Em Solution Explorer, o projeto de modelagem que contém o diagrama de camada ou diagramas com o botão direito e, em seguida, clique em Propriedades.

  2. No Propriedades janela, defina o projeto de modelagem Arquitetura validar propriedade para True.

    Isso inclui o projeto de modelagem no processo de validação.

  3. Em Solution Explorer, clique no arquivo de diagrama (.layerdiagram) de camada que deseja usar para validação.

  4. No Propriedades janela, certifique-se de que o diagrama Build Action for definida como Validar.

    Isso inclui o diagrama de camada no processo de validação.

Para obter mais informações sobre erros de validação de compreensão, consulte Noções básicas sobre os erros de validação de camada. Para gerenciar erros, consulte Erros de validação de gerenciar.

Validar código automaticamente durante uma compilação do Team Foundation

Para ajudar a impedir alterações no código que causar conflitos com o design pretendido, incluir validação de camada com suas compilações que são executados usando Team Foundation Build e com gated check-ins, que pode ser especificada, criando um personalizado MSBuild de tarefas. Use relatórios para coletar os erros de validação de compilação.

Para obter mais informações sobre Team Foundation Build, consulte os seguintes tópicos:

Para obter mais informações sobre como criar gated compilações de check-in, consulte Definir uma compilação Gated Check-In para validar as alterações.

Para validar o código durante a execução do Team Foundation Build

  1. Em Team Explorer, clique duas vezes na definição de compilação e, em seguida, clique em processo.

  2. Em parâmetros de processo de compilação, expanda compilaçãoe digite o seguinte no Argumentos do MSBuild parâmetro:

    /p:ValidateArchitecture = true

Para obter mais informações, consulte Definir uma compilação usando o modelo padrão.

Artefatos não oferecem suporte a validação

Artefatos não oferecem suporte a validação de um diagrama de camada incluem projetos do C++, sites da Web, documentos do Office e arquivos de texto sem formatação. Você pode vincular tais artefatos em camadas, mas o processo de validação irá ignorá-las. Erros de validação não aparecerá para referências a projetos ou assemblies que são vinculados a camadas separadas, quando nenhuma dependência aparece entre essas camadas. Tais referências não são consideradas dependências, a menos que o código usa essas referências.

Para verificar se um artefato oferece suporte à validação

  1. Em um diagrama de camada, selecione uma ou mais camadas, clique com o botão direito na sua seleção e, em seguida, clique em Exibir Links.

  2. Em Explorer de camada, examine o Oferece suporte à validação coluna.

    Se o valor for false para um link de artefato, que o artefato não oferece suporte a validação.

Solução de problemas com a camada de validação

A tabela a seguir descreve os problemas de validação de camada e suas resoluções. Esses problemas diferem de erros resultantes de conflitos entre o código e o design. Para obter mais informações sobre esses erros, consulte Noções básicas sobre os erros de validação de camada.

Assunto

Causa possível

Resolução

Erros de validação não ocorrem conforme o esperado.

Validação não funciona em diagramas de camada, que são copiadas de outros diagramas de camada no Solution Explorer e que estão no mesmo projeto de modelagem. Diagramas de camada são copiados dessa forma contêm as mesmas referências como o diagrama da camada original.

  1. Adicione um novo diagrama de camada para o projeto de modelagem.

  2. Copie os elementos do diagrama de camada de origem para o novo diagrama.

Consulte também

Conceitos

Validando o sistema durante o desenvolvimento

Outros recursos

Noções básicas sobre os erros de validação de camada