Commentaire XML manquant pour le type ou le membre visible publiquement

Je reçois cet avertissement: “Commentaire XML manquant pour le type ou le membre visible publiquement”.

Comment résoudre ce problème?

5 options:

  • Remplissez les commentaires de la documentation (super, mais prend du temps)
  • Désactiver la génération de commentaires (dans les propriétés du projet)
  • Désactivez l’avertissement dans les propriétés du projet (dans Propriétés du projet, accédez à Propriétés du projet -> Générer> “Erreurs et avertissements” (section), Supprimer les avertissements (zone de texte), ajoutez 1591 (liste séparée par des virgules))
  • Utilisez #pragma warning disable 1591 pour désactiver l’avertissement uniquement pour certains bits de code (et #pragma warning restore 1591 après)
  • Ignorer les avertissements (mauvaise idée – vous allez manquer de nouveaux “vrais” avertissements)

Ajoutez des commentaires XML aux types et aux membres publiquement visibles 🙂

 /// /// Gets the answer /// public int MyMethod() { return 42; } 

Vous avez besoin de ces commentaires de type

sur tous les membres – ils apparaissent également dans le menu contextuel intellisense.

La raison pour laquelle vous obtenez cet avertissement est parce que vous avez défini votre projet pour produire un fichier XML de documentation (dans les parameters du projet). Ceci est utile pour les bibliothèques de classes (assemblys .dll), ce qui signifie que les utilisateurs de votre fichier .dll reçoivent de la documentation intellisense pour votre API dans Visual Studio.

Je vous recommande de vous procurer une copie de GhostDoc Visual Studio AddIn .. Facilite la documentation.

Supprimer les avertissements pour les commentaires XML

(pas mon travail, mais je l’ai trouvé utile alors j’ai inclus l’article et le lien)

http://bernhardelbl.wordpress.com/2009/02/23/suppress-warnings-for-xml-comments/

Ici, je vais vous montrer comment supprimer les avertissements pour les commentaires XML après une génération de Visual Studio.

Contexte

Si vous avez coché la marque “Fichier de documentation XML” dans les parameters du projet Visual Studio, un fichier XML contenant tous les commentaires XML est créé. De plus, vous recevrez beaucoup d’avertissements dans les fichiers générés par les concepteurs, à cause des commentaires XML manquants ou erronés. Bien que parfois les avertissements nous aident à améliorer et à stabiliser notre code, obtenir des centaines d’avertissements de commentaires XML n’est qu’une douleur. Avertissements

Commentaire XML manquant pour un type ou un membre visible publiquement… Le commentaire XML sur… a une balise param pour «…», mais il n’y a pas de paramètre sous ce nom. Paramètre ‘…’ n’a pas de balise param correspondante dans le commentaire XML autres parameters font) Solution

Vous pouvez supprimer tous les avertissements dans Visual Studio.

  • Cliquez avec le bouton droit sur le projet Visual Studio / Propriétés / Onglet Construire

  • Insérez les numéros d’avertissement suivants dans les «avertissements de suppression»: 1591,1572,1571,1573,1587,1570

Insérer un commentaire XML. 😉

 ///  /// Describe your member here. ///  public ssortingng Something { get; set; } 

Cela peut sembler être une blague au premier abord, mais cela peut être utile. Pour moi, il s’est avéré utile de réfléchir aux méthodes même pour les méthodes privées (à moins que ce soit vraiment sortingvial, bien sûr).

En effet, un fichier de documentation XML a été spécifié dans les propriétés de votre projet et votre méthode / classe est publique et manque de documentation.
Tu peux soit :

  1. Désactiver la documentation XML:

    Clic droit sur votre projet -> Propriétés -> onglet “Construire” -> décochez Fichier de documentation XML.

  2. Asseyez-vous et écrivez la documentation vous-même!

Voici un résumé de la documentation XML:

 ///  /// Description of the class/method/variable ///  ..declaration goes here.. 

Je sais que c’est un très vieux sujet, mais c’est la première réponse sur Google, alors j’ai pensé append un peu d’information:

Ce comportement se produit uniquement lorsque le niveau d’avertissement est défini sur 4 sous “Propriétés du projet” -> “Générer”. À moins que vous ayez vraiment besoin de beaucoup d’informations, vous pouvez le définir sur 3 et vous débarrasser de ces avertissements. Bien sûr, modifier le niveau d’avertissement affecte plus que de simples commentaires. Veuillez vous reporter à la documentation si vous ne savez pas ce qui vous manquera:
https://msdn.microsoft.com/en-us/library/thxezb7y.aspx

Je voulais append quelque chose aux réponses listées ici:

Comme Isak l’a souligné, la documentation XML est utile pour les bibliothèques de classes, car elle fournit l’intellisense à tout consommateur dans Visual Studio. Par conséquent, une solution simple et correcte consiste à simplement désactiver la documentation de tout projet de niveau supérieur (comme l’interface utilisateur, etc.), qui ne sera pas implémenté en dehors de son propre projet.

De plus, je voulais souligner que l’avertissement ne concerne que les membres visibles publiquement . Donc, si vous configurez votre bibliothèque de classes pour exposer uniquement ce dont elle a besoin, vous pouvez vous en tirer sans documenter internal membres private et internal .

Il existe un autre moyen de supprimer ces messages sans avoir besoin de blocs de changement de code ou de pragma. Utilisation de Visual Studio – Accédez aux propriétés du projet> Générer> Erreurs et avertissements> Supprimer les avertissements – ajoutez 1591 à la liste des codes d’avertissement.

entrer la description de l'image ici

 #pragma warning disable 1591 #pragma warning disable 1591 #pragma warning disable 1572 #pragma warning disable 1571 #pragma warning disable 1573 #pragma warning disable 1587 #pragma warning disable 1570 

Définir le niveau d’avertissement sur 2 supprime ces messages. Je ne sais pas si c’est la meilleure solution car elle supprime également les avertissements utiles.

Dans votre solution, une fois que vous avez coché l’option de générer un fichier de document XML, il commence à vérifier vos membres publics. Pour avoir le XMLDoc, s’ils ne le font pas, vous recevrez un avertissement pour chaque élément. Si vous ne voulez pas vraiment publier votre DLL, et que vous n’avez pas besoin de documentations, allez à votre solution, comstackz la section et désactivez-la, si vous en avez besoin, remplissez-la et s’il n’y a pas d’importance propriétés et les champs, juste les dépasser avec l’instruction de pré-compilateur #pragma warning disable 1591 vous pouvez également restaurer l’avertissement: #pragma warning restore 1591

Fichier > Modifier > Afficher le projet (cliquez sur)

En bas de l’arc de liste déroulante (cliquez sur Ouvrir / Travail actuel > Propriétés ), ouvrez la page de propriétés du projet sous “Générer” sous “Sortie”. Case à cocher “Décochez” la documentation XML .

Reconstruire et pas d’avertissement.

Vous devez append /// Commentaire au membre pour lequel l’avertissement est affiché.

voir le code ci-dessous

 public EventLogger() { LogFile = ssortingng.Format("{0}{1}", LogFilePath, FileName); } 

Il affiche un avertissement XML manquant pour le type ou le membre visible publiquement ‘.EventLogger ()’

J’ai ajouté un commentaire pour le membre et l’avertissement a disparu.

 /// /// To write a log  /// public EventLogger() { LogFile = ssortingng.Format("{0}{1}", LogFilePath, FileName); } 

La réponse de Jon Skeet fonctionne parfaitement lorsque vous construisez avec VisualStudio. Cependant, si vous construisez le sln via la ligne de commande (dans mon cas, c’était via Ant), vous pouvez constater que msbuild ignore les requêtes de suppression de sln.

L’ajout de ceci à la ligne de commande msbuild a résolu le problème pour moi:

 /p:NoWarn=1591 

J’ai reçu ce message après avoir attaché un atsortingbut à une méthode

 [webMethod] public void DoSomething() { } 

Mais la bonne façon était la suivante:

 [webMethod()] // Note the Parentheses public void DoSomething() { }