Sdílet prostřednictvím


Ověřování kódu pomocí diagramů vrstev

Chcete-li zajistit, že kód není v rozporu s jeho návrhu, můžete ověřit kód s diagramy vrstvy v aplikaci Visual Studio Ultimate a Visual Studio Premium.To může pomoci:

  • Najdete konflikty mezi závislostí ve vašem kódu a závislosti v diagramu vrstvy.

  • Hledání závislostí, které mohou být ovlivněny navrhované změny.

    Můžete například upravit vrstvu diagramu, který chcete zobrazit potenciální změn architektury a následné ověření kódu v tématu ohroženým závislostí.

  • Refaktorovat nebo přenesení kódu do jiného návrhu.

    Najděte kód nebo závislostí, které vyžadují práci, přesunete-li kód pro jinou architekturu.

Můžete ověřit kód ručně z diagramu vrstvy otevřít v aplikaci Visual Studio nebo z příkazového řádku.Můžete také ověřit kód automaticky při spuštění místního sestavení nebo Team Foundation Build.Viz videa kanálu 9: návrh a ověření vašeho architektury pomocí diagramech vrstev.

Požadavky

  • Visual Studio Ultimate nebo Visual Studio Premium

  • Řešení, které má projekt modelování pomocí diagramu vrstvy.Tento diagram vrstvy musí být spojeny s artefakty v projektech aplikace Visual C# .NET nebo Visual Basic .NET, které chcete ověřit.Viz téma Vytváření diagramů vrstev z kódu.

Akce

  • Pokud položku podporuje ověřování

  • Zahrnout jiné sestavení .NET a projekty k ověření

  • Ověření kódu ručně

  • Ověření kódu automaticky

  • Odstraňovat potíže s ověření

  • Pochopení a vyřešení chyb ověření vrstvy

Pokud položku podporuje ověřování

  1. Vrstva diagramu vyberte jednu nebo více vrstev, pravým tlačítkem myši na výběr a potom klepněte na tlačítko Zobrazit odkazy.

  2. V Explorer vrstvy, podívejte se Podporuje ověřování sloupce.Pokud je hodnota false, položka nepodporuje ověřování.

Můžete propojit weby, dokumenty sady Office, a nesmí je zahrnovat soubory ve formátu prostého textu na vrstvy, ale proces ověření.Chyby ověřování nezobrazí pro odkazy na projekty nebo sestavení, které jsou propojeny do samostatných vrstev, je-li zobrazeny žádné závislosti mezi těmito vrstvami.Tyto odkazy nejsou považovány za závislosti, není-li kód používá tyto odkazy.

Zahrnout jiné sestavení .NET a projekty k ověření

Při přetažení položky schématu layer odkazy na odpovídající sestavení .NET nebo projekty jsou přidány automaticky do Vrstvy odkazy složky projektu modelování.Tato složka obsahuje odkazy na sestavení a projekty, které jsou analyzovány během ověřování.Bez ručně jejich přetažení do diagramu vrstvy mohou být jiné sestavení .NET a projekty k ověření.

  1. V Průzkumníku, klepněte pravým tlačítkem myši na projekt modelování nebo Vrstvy odkazy složku a potom klepněte na tlačítko Přidat odkaz na.

  2. V Přidat odkaz dialogové okno, sestavení nebo projekty vyberte a potom klepněte na tlačítko OK.

Ověření kódu ručně

Pokud máte otevřené vrstvy diagram, který je spojen s položkami řešení, můžete spustit ověřit příkaz zástupce z diagramu.Do příkazového řádku můžete také spustit msbuild s /p:ValidateArchitecture vlastní vlastnost nastavena na True.Například při provádění změn v kódu, ověření vrstvu pravidelně tak, aby konflikty závislost může zachytit včas.

Chcete-li ověřit kód z diagramu otevřené vrstvy

  1. Klepněte pravým tlačítkem myši na povrch diagramu a potom klepněte na tlačítko Ověřit architekturu.

    [!POZNÁMKA]

    Ve výchozím nastavení Proces sestavení vlastnost v souboru s diagramem (.layerdiagram) vrstva je nastavena na ověřit tak, aby diagram je součástí procesu ověření pravosti.

    Seznam chyb okno hlásí chyby, ke kterým dochází.Další informace o chybách ověření naleznete v tématu vyřešit chyby ověření vrstvy a její.

  2. Zobrazení zdroje každou chybu, poklepejte na chybu v Seznam chyb okna.

    [!POZNÁMKA]

    Visual Studiomůže se zobrazit graf závislosti namísto zdroj chyby.K tomu dochází, když kód má závislost na sestavení, které není určeno diagram vrstvy, nebo kód je chybějící závislost, která je určena diagram vrstvy.Zobrazit graf závislosti nebo kód, aby určily, zda by měl existovat závislost.Další informace o závislostech grafy, viz Vizualizace závislostí kódu v grafech závislostí.

  3. Správa chyb, viz chyby ověřování spravovat.

Chcete-li ověřit kód příkazového řádku

  1. Otevřít Visual Studio příkazového řádku.

  2. Zvolte jednu z následujících:

    • Chcete-li ověřit kód proti konkrétní modelování projektu v řešení, spusťte MSBuild s následující vlastní vlastnost.

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

      -nebo-

      Vyhledejte složku, která obsahuje modelování projektu soubor (.modelproj) a diagram vrstvy a spusťte MSBuild s následující vlastnosti:

      msbuild /p:ValidateArchitecture=true
      
    • Chcete-li ověřit kód proti všem modelování projektů v řešení, spusťte MSBuild s následující vlastnosti:

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

      -nebo-

      Přejděte do složky řešení, které musí obsahovat projekt modelování, který obsahuje vrstvu diagramu a potom spusťte MSBuild s následující vlastnosti:

      msbuild /p:ValidateArchitecture=true 
      

    Zobrazí všechny chyby, ke kterým dochází.Další informace o MSBuild, viz MSBuild a Úloha MSBuild.

Další informace o chybách ověření naleznete v tématu vyřešit chyby ověření vrstvy a její.

Dd409395.collapse_all(cs-cz,VS.110).gifSpráva chyb ověřování

Během procesu vývoje můžete potlačit některé oznámenou konflikty během ověřování.Například můžete chtít potlačit chyby, které jsou již adresování nebo které nejsou vztahující se k danému scénáři.Při potlačení chyby, je vhodné protokolovat pracovní položka Team Foundation.

Chcete-li vytvořit pracovní položka chyby ověření

  • V Seznam chyb okno, klepněte pravým tlačítkem myši chybu, přejděte na příkaz Vytvořit položku pracovata potom klepněte na požadovaný typ pracovní položku, kterou chcete vytvořit.

Slouží ke správě chyby ověření platnosti v těchto úkolů Seznam chyb okno:

Akce

Postupujte následujícím způsobem

V průběhu ověřování potlačit vybrané chyby

Pravým tlačítkem myši na jednu nebo více vybraných chyby, přejděte na příkaz Chyby ověřování spravovata potom klepněte na tlačítko Potlačit chyby.

Potlačené chyby se zobrazují s přeškrtnutím.Při spuštění ověření při příštím, nezobrazí se tyto chyby.

V souboru .suppressions pro odpovídající soubor s diagramem vrstvy jsou sledovány potlačena chyby.

Zastavit, potlačení vybrané chyby

Klepněte pravým tlačítkem na vybraný potlačena chyby nebo chyb, přejděte na příkaz Chyby ověřování spravovata potom klepněte na tlačítko Chybami Stop potlačení.

Vybrané potlačena chyby se zobrazí při spuštění ověření dalším.

Obnovit všechny Potlačené chyby Seznam chyb okno

Klepněte pravým tlačítkem myši kdekoli v Seznam chyb okna, přejděte na příkaz Chyby ověřování spravovata potom klepněte na tlačítko Zobrazit všechny potlačit chyby v.

Skrýt všechny Potlačené chyby z Seznam chyb okno

Klepněte pravým tlačítkem myši kdekoli v Seznam chyb okna, přejděte na příkaz Chyby ověřování spravovata potom klepněte na tlačítko Skrýt všechny potlačit chyby.

Ověření kódu automaticky

Je možné provést ověřování vrstva pokaždé, když spustíte místní sestavení.Pokud váš tým používá služby Team Foundation Build, mohou provést ověření vrstvu s gated vrácení se změnami, které můžete určit vytvořením vlastní Úloha MSBuild a použití sestavení zprávy shromažďovat chyby ověřování. Chcete-li vytvořit sestavení gated check-in, viz Definovat proces Gated sestavení políčko ověřit změny.

Chcete-li ověřit kód automaticky při místní sestavení

  • Pomocí textového editoru otevřete projekt modelování (.modelproj) souboru a potom zahrnout následující vlastnosti:
<ValidateArchitecture>true</ValidateArchitecture>

-nebo-

  1. V Průzkumníku, klepněte pravým tlačítkem na projekt modelování, který obsahuje vrstvu diagram nebo diagramy a potom klepněte na tlačítko Vlastnosti.

  2. V Vlastnosti okna, nastavení projektu modelování Ověřit architekturu vlastnost True.

    Jedná se o projekt modelování v procesu ověření pravosti.

  3. V Průzkumníku, klepněte na soubor s diagramem (.layerdiagram) vrstvu, kterou chcete použít pro ověřování.

  4. V Vlastnosti okna, ujistěte se, že v diagramu Proces sestavení vlastnost je nastavena na ověřit.

    To zahrnuje vrstvu diagram procesu ověření pravosti.

Ke správě chyby v okně Seznam chyb, viz Chyby ověřování spravovat.

Chcete-li ověřit kód automaticky během Team Foundation Build

  1. V Průzkumník týmových projektů, poklepejte na položku definice sestavení a potom klepněte na tlačítko proces.

  2. Podle Parametry procesu sestavení, rozbalte položku kompilacea zadejte následující v MSBuild argumenty parametr:

    /p:ValidateArchitecture = true

Další informace o chybách ověření naleznete v tématu vyřešit chyby ověření vrstvy a její.Další informace o Team Foundation Build, viz:

Odstraňovat potíže s ověření

Následující tabulka popisuje vrstvu ověřování problémy a jejich řešení.Tyto problémy se liší od chyby vzniklé v důsledku konfliktu mezi kódem a návrh.Další informace o těchto chybách naleznete v tématu vyřešit chyby ověření vrstvy a její.

Problém

Možná příčina

Rozhodnutí

Chyby ověřování nedojde podle očekávání.

Ověřování nefunguje v diagramech vrstev, které jsou zkopírovány z jiných diagramech vrstev v Průzkumníku řešení a které jsou v rámci jednoho projektu modelování.Diagramy vrstvy, které jsou zkopírovány tímto způsobem obsahují stejné odkazy jako původní vrstvy diagramu.

  1. Přidání nového diagramu vrstvy modelování projektu.

  2. Kopírovat prvky z diagramu zdrojové vrstvy nového diagramu.

Pochopení a vyřešení chyby ověření vrstvy

Při ověřování kódu proti diagramu vrstvu ověřování dojde při kód je v konfliktu s návrhem.Například následující podmínky mohou způsobit chyby ověření:

  • Artefakt je přiřazen nesprávný vrstvy.V tomto případě přesunete artefakt.

  • Artefakt, například třídu, používá jinou třídu způsobem, který je v konfliktu s v architektuře.V tomto případě Refaktorovat kód, který chcete odebrat tuto závislost.

Chcete-li tyto chyby vyřešit, aktualizujte kód, dokud se nezobrazí žádné další chyby během ověřování.Tuto úlohu lze provést iterační způsobem.

Následující část popisuje syntaxi, která se používá v těchto chyb, vysvětluje význam těchto chyb a navrhne, čemu vyřešit nebo jejich správě.

Syntaxe

Description

ArtifactN(ArtifactTypeN)

ArtifactN je artefakt, který souvisí s vrstvu na vrstvu diagramu.

ArtifactTypeN je typ ArtifactN, jako je například třídy nebo metody, například:

MySolution.MyProject.MyClass.MyMethod(Method)

NamespaceNameN

Název oboru názvů.

LayerNameN

Název vrstvy v diagramu vrstvy.

DependencyType

Typ vztahu závislosti mezi Artifact1 a Artifact2.Například Artifact1 má volání vztah s Artifact2.

Chyba syntaxe

Popis chyby

AV0001: Neplatný závislost: Artifact1(ArtifactType1)--> Artifact2(ArtifactType2)

   Vrstvy: LayerName1, LayerName2 | Závislosti: DependencyType

Artifact1 v LayerName1 by neměly mít závislost Artifact2 v LayerName2 protože LayerName1 nemá přímé závislosti na LayerName2.

AV1001: Neplatný obor názvů: artefakt

   Vrstvy: LayerName | Požadovaný obor názvů: NamespaceName1 | Aktuální obor názvů: NamespaceName2

LayerName vyžaduje, aby jeho přidružené artefakty musí patřit do NamespaceName1.Artefakt v NamespaceName2, nikoli NamespaceName1.

AV1002: Závisí na zakázané oboru názvů: Artifact1(ArtifactType1) | Artifact2(ArtifactType2)

   Vrstvy: LayerName | Zakázané oboru názvů: NamespaceName | Závislosti: DependencyType

LayerName vyžaduje, aby jeho přidružené artefakty nesmí záviset na NamespaceName.Artifact1 nemůže záviset na Artifact2 protože Artifact2 v NamespaceName.

AV1003: V zakázané oboru názvů: artefaktů(ArtifactType)

   Vrstvy: LayerName | Zakázané oboru názvů: NamespaceName

LayerName vyžaduje, aby jeho přidružené artefakty nemůže patřit k NamespaceName.Artefakt patří k NamespaceName.

AV3001: chybějící vazby: vrstvy "LayerName"odkazuje na"artefaktů' nemůže být nalezen.Postrádáte odkaz na sestavení?

LayerName odkazy na artefakt, který nebyl nalezen.Například odkaz na třídu, pravděpodobně chybí modelování projektu chybí odkaz na sestavení, která obsahuje třídu.

AV9001: Architektonické analýzy byly nalezeny vnitřní chyby.Výsledky nemusí být úplný.Další informace naleznete v protokolu událostí podrobná sestavení nebo v okně výstupu.

Naleznete v protokolu událostí sestavení nebo okno výstup pro další podrobnosti.

Viz také

Koncepty

Ověřování systému během vývoje