42 votes

Comment faire fonctionner le dictionnaire personnalisé FxCop?

Comment est-il possible de faire fonctionner le dictionnaire personnalisé FxCop correctement?

J'ai essayé d'ajouter des mots pour être reconnus dans le fichier 'CustomDictionary.xml', qui est conservé dans le même dossier que le fichier de projet FxCop. Cela ne semble pas fonctionner, car je reçois toujours le message FxCop «Les identificateurs doivent être épelés correctement», même après le rechargement et la réexécution de FxCop. Utilisation de la version 1.36.

29voto

spinodal Points 2092

Si vous l'utilisez à l'intérieur de Visual Studio...

De Code De Visual Studio Analyse Du Blog De L'Équipe

Pour ajouter un dictionnaire personnel, C# et Projet Visual Basic est simple:

  1. Dans l'Explorateur de solutions, cliquez-droit sur le projet et sélectionnez Ajouter -> Nouvel L'élément...
  2. Sous Modèles, sélectionnez le Fichier XML, entrez un nom pour le dictionnaire, par exemple comme CodeAnalysisDictionary.xml et cliquez sur Ajouter
  3. Dans l'Explorateur de solutions, cliquez-droit sur le fichier XML et choisissez Propriétés
  4. Dans les Propriétés de la fenêtre de l'outil, en vertu de l'Action de génération de choisir CodeAnalysisDictionary
  5. Dans l'Explorateur de solutions, double-cliquez sur le nouveau dictionnaire de l'ouvrir
  6. Dans l'éditeur XML, collez le texte suivant, en remplaçant "productname" et "companyname" avec des membres de votre équipe équivalents:

    <Dictionary>
         <Words>
            <Recognized>
                <Word>"productname"</Word>
                <Word>"companyname"</Word>
            </Recognized>
        </Words>
    </Dictionary>
    

Vous êtes maintenant prêt à commencer à saisir vos propres mots. Il suffit d'ajouter un nouvel élément pour chaque mot dans votre projet qui n'existe pas dans le dictionnaire. Chaque mot est insensibles à la casse, donc n'importe quel boîtier de la mot sera reconnu. L'Analyse De Code va automatiquement chercher le personnalisé dictionnaire la prochaine fois qu'il est exécuté.

17voto

David Schmitt Points 29384

Le moyen le plus simple est simplement de l'appeler "CustomDictionary.xml" et de le placer dans le dossier de votre solution, où FxCop (1,36 testé ici) le détectera automatiquement, si vous avez

 <CustomDictionaries SearchFxCopDir="True"
                    SearchUserProfile="True"
                    SearchProjectDir="True" />
 

dans votre fichier de projet FxCop.

Vous pouvez également le spécifier via le paramètre de ligne de commande /dictionary .

4voto

andypaxo Points 3080

À ma connaissance, FxCop 1.35 et les versions suivantes utilisent deux sources pour le dictionnaire.

  • Le dictionnaire Microsoft Office (l'ajout de mots via MS Word, etc. devrait fonctionner)
  • Un fichier 'CustomDictionary.xml' stocké dans le dossier du programme FxCop , plutôt que dans le dossier du projet.

4voto

Pete Points 5231

J'exécute FxCopCmd.exe dans le cadre de mon processus de construction et je passe ici le paramètre de ligne de commande du dictionnaire.

 FxCopCmd.exe ... /dictionary:FxCopDictionary.xml
 

Cela fonctionne avec la version Visual Studio 2010 RC de FxCop. Je ne sais pas si cela fonctionnera avec les versions précédentes.

3voto

Grhm Points 3134

Suite à David Schmitt réponse ci-dessus, vous devrez peut-être modifier/supprimer le dictionnaire personnalisé livré avec FxCop de l'intérieur de la FxCop dossier d'installation.

Je viens d'installer FxCop v1.36, et ne pouvait pas obtenir le Projet de certains mots dans mon dictionnaire à être reconnue jusqu'à ce que j'ai enlevé le dictionnaire personnalisé à l' C:\Program Files\Microsoft FxCop 1.36\CustomDictionary.xml.

Une fois, j'avais déplacé que d'un côté, FxCop commencé à utiliser l' CustomDictionary.xml dans le dossier de la solution.

Ce n'poser la question de savoir comment ajouter des mots communs partagés dictionnaire personnalisé et projet/solution des mots spécifiques dans d'autres dictionnaires personnalisés et ayant réellement FxCop utiliser les deux. Mais pour l'instant ça fonctionne....

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X