Freigeben über


Anpassen des Codeanalysewörterbuchs

Die Codeanalyse verwendet ein integriertes Wörterbuch, um Bezeichner in Ihrem Code auf Fehler in Rechtschreibung, grammatikalischem Kasus und anderen Benennungskonventionen der .NET-Entwurfsrichtlinien zu überprüfen. Sie können eine ein benutzerdefiniertes Wörterbuch als XML-Datei erstellen, um Begriffe, Abkürzungen und Akronyme zum integrierten Wörterbuch hinzuzufügen, zu entfernen oder zu ändern.

Angenommen, Ihr Code enthält eine Klasse namens DoorKnokker (TürKlopper). Die Codeanalyse würde den Namen als Kompositum aus zwei Wörtern identifizieren: door (Tür) und knokker (Klopper). Es würde dann eine Warnung auslösen, dass knokker nicht richtig geschrieben wurde. Um zu erzwingen dass die Codeanalyse diese Schreibweise erkennt, können Sie dem benutzerdefinierten Wörterbuch den Begriff knokker hinzufügen.

Erstellen eines benutzerdefinierten Wörterbuchs

Erstellen Sie eine Datei mit dem Namen CustomDictionary.xml.

Definieren Sie Ihre benutzerdefinierten Wörter mithilfe der folgenden XML-Struktur:

<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>

Elemente benutzerdefinierter Wörterbücher

Sie können das Verhalten des Codeanalysewörterbuchs ändern, indem Sie Begriffe als inneren Text der folgenden Elemente im Benutzerwörterbuch hinzufügen:

Dictionary/Words/Recognized/Word

Um einen Begriff in die Liste der Begriffe aufzunehmen, die von der Codeanalyse als richtig geschrieben identifiziert werden, fügen Sie ihn als inneren Text eines Dictionary/Words/Recognized/Word-Elements hinzu. Bei Begriffen in Dictionary/Words/Recognized/Word-Elementen wird die Groß-/Kleinschreibung nicht beachtet.

Beispiel

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

Für Begriffe in Dictionary/Words/Recognized-Knoten gelten die folgenden Codeanalyseregeln:

Dictionary/Words/Unrecognized/Word

Um einen Begriff aus der Liste der Begriffe auszuschließen, die von der Codeanalyse als richtig geschrieben identifiziert werden, fügen Sie ihn als inneren Text eines Dictionary/Words/Unrecognized/Word-Elements hinzu. Bei Begriffen in Dictionary/Words/Unrecognized/Word-Elementen wird die Groß-/Kleinschreibung nicht beachtet.

Beispiel

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

Für Begriffe in Dictionary/Words/Unrecognized-Knoten gelten die folgenden Codeanalyseregeln:

Dictionary/Words/Deprecated/Term[@PreferredAlternate]

Um einen Begriff in die Liste der Begriffe aufzunehmen, die von der Codeanalyse als veraltet identifiziert werden, fügen Sie ihn als inneren Text eines Dictionary/Words/Deprecated/Term-Elements hinzu. Ein veralteter Begriff ist ein Wort, das richtig geschrieben ist, aber nicht verwendet werden sollte.

Um einen bevorzugten alternativen Begriff in die Warnung aufzunehmen, geben Sie diesen im PreferredAlternate-Attribut des Term-Elements an. Sie können den Attributwert leer lassen, wenn Sie keine Alternative vorschlagen möchten.

  • Bei veralteten Begriffen im Dictionary/Words/Deprecated/Term-Element wird die Groß-/Kleinschreibung nicht beachtet.

  • Beim Wert des PreferredAlternate-Attributs wird die Groß-/Kleinschreibung beachtet. Verwenden Sie die Pascal-Schreibweise für Alternativen, die aus mehreren Wörtern bestehen.

Beispiel

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

Für Begriffe in Dictionary/Words/Deprecated-Knoten gelten die folgenden Codeanalyseregeln:

Dictionary/Words/Compound/Term[@CompoundAlternate]

Das integrierte Wörterbuch identifiziert einige Begriffe als einzelne, diskrete Begriffe anstelle eines zusammengesetzten Begriffs. Um einen Begriff in die Liste der Begriffe aufzunehmen, die die Codeanalyse als zusammengesetztes Wort identifiziert, und um die richtige Groß- und Kleinschreibung des Begriffs festzulegen, fügen Sie den Begriff als inneren Text eines Dictionary/Words/Compound/Term-Elements hinzu. Geben Sie im CompoundAlternate-Attribut des Term-Elements die einzelnen Wörter in der Pascal-Schreibweise an, d. h. die Wörter des zusammengesetzten Begriffs werden (ohne Leerzeichen) zusammen geschrieben, wobei der erste Buchstabe der einzelnen Wörter großgeschrieben wird. Beachten Sie, dass der im inneren Text angegebene Begriff automatisch der Liste Dictionary/Words/DiscreteExceptions hinzugefügt wird.

  • Bei zusammengesetzten Begriffen im Dictionary/Words/Compound/Term-Element wird die Groß-/Kleinschreibung nicht beachtet.

  • Beim Wert des PreferredAlternate-Attributs wird die Groß-/Kleinschreibung beachtet. Verwenden Sie die Pascal-Schreibweise für Alternativen, die aus mehreren Wörtern bestehen.

Beispiel

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

Für Begriffe in Dictionary/Words/Compound-Knoten gelten die folgenden Codeanalyseregeln:

Dictionary/Words/DiscreteExceptions/Term

Um einen Begriff in der Liste der Begriffe auszuschließen, die von der Codeanalyse als einzelnes, diskretes Wort identifiziert, wenn der Ausdruck durch die Groß- und Kleinschreibungsregeln für zusammengesetzte Wörter überprüft wird, fügen Sie den Begriff als inneren Text eines Dictionary/Words/DiscreteExceptions/Term-Elements hinzu. Für Begriffe im Dictionary/Words/DiscreteExceptions/Term-Element wird die Groß-/Kleinschreibung nicht beachtet.

Beispiel

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

Für Begriffe in Dictionary/Words/DiscreteExceptions-Knoten gelten die folgenden Codeanalyseregeln:

Dictionary/Acronyms/CasingExceptions/Acronym

Um ein Akronym in die Liste der Begriffe aufzunehmen, die von der Codeanalyse als richtig geschrieben identifiziert werden und anzugeben, wie das Akronym durch die Groß-/Kleinschreibungsregeln für zusammengesetzte Wörter überprüft wird, fügen Sie den Begriff als inneren Text eines Dictionary/Acronyms/CasingExceptions/Acronym-Elements hinzu. Bei Akronymen im Dictionary/Acronyms/CasingExceptions/Acronym-Element wird die Groß-/Kleinschreibung beachtet.

Beispiel

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

Für Begriffe in Dictionary/Acronyms/CasingExceptions-Knoten gelten die folgenden Codeanalyseregeln:

Ein benutzerdefiniertes Wörterbuch auf ein Projekt anwenden

  1. Führen Sie in im Projektmappen-Explorer einen der folgenden Schritte aus:

    • Um einem einzelnen Projekt ein Wörterbuch hinzuzufügen, klicken Sie mit der rechten Maustaste auf den Projektnamen, und klicken Sie dann auf Vorhandenes Element hinzufügen. Für Dateitypen wählen Sie Alle Dateien, und geben Sie dann die Datei im Dialogfeld Vorhandenes Element hinzufügen an.

    • Um ein Wörterbuch hinzuzufügen, das für zwei oder mehr Projekte freigegeben ist, suchen Sie im Dialogfeld Vorhandenes Element hinzufügen nach der Datei, die freigegeben werden soll, klicken Sie auf der Schaltfläche Hinzufügen auf den Pfeil nach unten und klicken Sie dann auf Als Link hinzufügen.

  2. Klicken Sie im Projektmappen-Explorer mit der rechten Maustaste auf den CustomDictionary.xml und klicken Sie dann auf Eigenschaften.

  3. Wählen Sie in der Liste Buildvorgang die Option CodeAnalysisDictionary aus.

  4. Wählen Sie in der Liste In Ausgabeverzeichnis kopieren die Option Nicht kopieren aus.