web-dev-qa-db-fra.com

Comment avoir des commentaires dans IntelliSense pour fonctionner dans Visual Studio?

Dans Visual Studio et C #, lors de l'utilisation d'une fonction intégrée telle que ToString (), IntelliSense affiche une zone jaune expliquant son rôle.

alt textalt text

Comment puis-je avoir cela pour les fonctions et les propriétés que j'écris?

125
Ali

Pour générer une zone dans laquelle vous pouvez spécifier une description de la fonction et chaque paramètre de la fonction, tapez ce qui suit sur la ligne précédant votre fonction et appuyez sur Enter:

  • C #: ///

  • VB: '''

Voir Balises recommandées pour les commentaires sur la documentation (Guide de programmation C #) pour plus d'informations sur le contenu structuré que vous pouvez inclure dans ces commentaires.

201
Solmead

Ce dont vous avez besoin est commentaires xml - en gros, ils suivent cette syntaxe (comme décrit vaguement par Solmead):

C #

///<summary>
///This is a description of my function.
///</summary>
string myFunction() {
     return "blah";
}

VB

'''<summary>
'''This is a description of my function.
'''</summary>
Function myFunction() As String
    Return "blah"
End Function
66
Tomas Aschan

<c>text</c> - Le texte que vous souhaitez indiquer comme code.
La balise <c> vous permet d'indiquer que le texte d'une description doit être marqué en tant que code. Utilisez <code> pour indiquer plusieurs lignes en tant que code.

<code>content</code> - Le texte que vous souhaitez marquer comme code.
La balise <code> vous permet d'indiquer plusieurs lignes sous forme de code. Utilisez <c> pour indiquer que le texte dans une description doit être marqué en tant que code.

<example>description</example> - Description de l'exemple de code.
La balise <exemple> vous permet de spécifier un exemple d'utilisation d'une méthode ou d'un autre membre de la bibliothèque. Cela implique généralement l'utilisation de la balise <code>.

<exception cref="member">description</exception> - Description de l'exception.
La balise <exception> vous permet de spécifier les exceptions pouvant être levées. Cette balise peut être appliquée aux définitions de méthodes, propriétés, événements et indexeurs.

<include file='filename' path='tagpath[@name="id"]' />
La balise <include> vous permet de faire référence à des commentaires dans un autre fichier qui décrivent les types et les membres de votre code source. C'est une alternative à l'insertion de commentaires de la documentation directement dans votre fichier de code source. En plaçant la documentation dans un fichier séparé, vous pouvez appliquer le contrôle de source à la documentation séparément du code source. Une personne peut extraire le fichier de code source et une autre personne peut extraire le fichier de documentation. La balise <include> utilise la syntaxe XML XPath. Reportez-vous à la documentation XPath pour savoir comment personnaliser votre utilisation de <include>.

<list type="bullet" | "number" | "table">
    <listheader>
        <term>term</term>
        <description>description</description>
    </listheader>
    <item>
        <term>term</term>
        <description>description</description>
    </item>
</list>

Le bloc <listheader> permet de définir la ligne d'en-tête d'une table ou d'une liste de définitions. Lorsque vous définissez une table, vous devez uniquement fournir une entrée pour terme dans l'en-tête. Chaque élément de la liste est spécifié avec un bloc <item>. Lors de la création d'une liste de définitions, vous devrez spécifier le terme et la description. Toutefois, pour une table, une liste à puces ou une liste numérotée, il vous suffit de fournir une entrée pour la description. Une liste ou une table peut avoir autant de blocs <item> que nécessaire.

<para>content</para>
La balise <para> est destinée à être utilisée à l'intérieur d'une balise, telle que <summary>, <remarques> ou < retourne>, et vous permet d'ajouter une structure au texte.

<param name="name">description</param>
La balise <param> doit être utilisée dans le commentaire pour qu'une déclaration de méthode décrive l'un des paramètres de la méthode. Pour documenter plusieurs paramètres, utilisez plusieurs balises <param>.
Le texte de la balise <param> sera affiché dans IntelliSense, dans le navigateur d’objets et dans le rapport Web de commentaire de code.

<paramref name="name"/>
La balise <paramref> vous permet d'indiquer qu'un mot dans le code est commenté, par exemple dans un <résumé> ou <remarques> bloc fait référence à un paramètre. Le fichier XML peut être traité pour formater ce mot de manière distincte, par exemple avec une police en gras ou en italique.

<permission cref="member">description</permission>
La balise <permission> vous permet de documenter l'accès d'un membre. La classe PermissionSet vous permet de spécifier l'accès à un membre.

<remarks>description</remarks>
La balise <remarques> est utilisée pour ajouter des informations sur un type, en complément des informations spécifiées avec <summary>. Cette information est affichée dans le navigateur d'objets.

<returns>description</returns>
La balise <return> doit être utilisée dans le commentaire pour une déclaration de méthode décrivant la valeur de retour.

<see cref="member"/>
La balise <see> vous permet de spécifier un lien depuis le texte. Utilisez <seealso> pour indiquer que le texte doit être placé dans une section Voir aussi. Utilisez l'attribut cref pour créer des liens hypertexte internes vers les pages de documentation pour les éléments de code.

<seealso cref="member"/>
La balise <seealso> vous permet de spécifier le texte que vous souhaitez voir apparaître dans une section Voir aussi. Utilisez <see> pour spécifier un lien dans le texte.

<summary>description</summary>
La balise <summary> doit être utilisée pour décrire un type ou un membre de type. Utilisez <remarques> pour ajouter des informations supplémentaires à une description de type. Utilisez l'attribut cref pour permettre aux outils de documentation, tels que Sandcastle, de créer des hyperliens internes vers les pages de documentation pour les éléments de code. Le texte de la balise <summary> est la seule source d'informations sur le type dans IntelliSense et est également affiché dans le navigateur d'objets.

<typeparam name="name">description</typeparam>
La balise <typeparam> doit être utilisée dans le commentaire d'une déclaration de type ou de méthode générique pour décrire un paramètre de type. Ajoutez une balise pour chaque paramètre de type du type ou de la méthode générique. Le texte de la balise <typeparam> sera affiché dans IntelliSense, le rapport Web de commentaire de code du navigateur d’objets.

<typeparamref name="name"/>
Utilisez cette balise pour permettre aux utilisateurs du fichier de documentation de formater le mot de manière distincte, par exemple en italique.

<value>property-description</value>
La balise <value> vous permet de décrire la valeur représentée par une propriété. Notez que lorsque vous ajoutez une propriété via un assistant de code dans l'environnement de développement Visual Studio .NET, une balise <summary> est ajoutée pour la nouvelle propriété. Vous devez ensuite ajouter manuellement une balise <value> pour décrire la valeur représentée par la propriété.

22
Max

Faire des commentaires XML, comme ceci

/// <summary>
/// This does something that is awesome
/// </summary>
public void doesSomethingAwesome() {}
11
Michael Walts

utilisez /// pour commencer chaque ligne du commentaire et faites en sorte que le commentaire contienne le caractère xml approprié pour le lecteur de métadonnées.

///<summary>
/// this method says hello
///</summary>
public void SayHello();

Bien que personnellement, je pense que ces commentaires sont généralement erronés, à moins que vous ne développiez des classes où le code ne peut pas être lu par les consommateurs.

10
DevelopingChris

Celles-ci s'appellent XML Comments . Ils font partie de Visual Studio depuis toujours.

Vous pouvez faciliter votre processus de documentation en utilisant GhostDoc , un complément gratuit pour Visual Studio qui génère des commentaires XML-doc pour vous. Placez simplement votre curseur sur la méthode/propriété que vous souhaitez documenter, puis appuyez sur Ctrl-Maj-D.

Voici un exemple de n de mes messages .

J'espère que ça t'as aidé :)

9
Igal Tabachnik

Dans CSharp, si vous créez le schéma de méthode/fonction avec ses paramètres, alors, lorsque vous ajoutez les trois barres obliques, il génère automatiquement la section summary et les sections parms.

Alors j'ai mis dans:

public string myMethod(string sImput1, int iInput2)
{
}

J'ai ensuite placé les trois /// devant lui et Visual Studio m'a donné ceci:

/// <summary>
/// 
/// </summary>
/// <param name="sImput1"></param>
/// <param name="iInput2"></param>
/// <returns></returns>
public string myMethod(string sImput1, int iInput2)
{
}
6
Semperfi89

Définissez des méthodes comme celle-ci et vous obtiendrez l'aide dont vous avez besoin.

    /// <summary>
    /// Adds two numbers and returns the result
    /// </summary>
    /// <param name="first">first number to add</param>
    /// <param name="second">second number to </param>
    /// <returns></returns>
    private int Add(int first, int second)
    {
        return first + second;
    }

Capture d'écran de l'utilisation du code

4
Recev Yildiz

read http://msdn.Microsoft.com/en-us/library/3260k4x7.aspx Le simple fait de spécifier les commentaires ne fera pas apparaître les commentaires d'aide dans intellisense.

4
user1180781

De plus, le doc fantôme du complément Visual Studio tentera de créer et de compléter les commentaires d’en-tête à partir du nom de votre fonction.

1
Mark Rogers

Toutes ces autres réponses ont un sens, mais sont incomplètes. Visual Studio traitera les commentaires XML, mais vous devrez les activer. Voici comment faire cela:

Intellisense utilisera les commentaires XML que vous avez entrés dans votre code source, mais vous devez les activer via les options de Visual Studio. Allez à Tools> Options> Text Editor. Pour Visual Basic, activez le paramètre Advanced> Generate XML documentation comments for '''. Pour C #, activez le paramètre Advanced> Generate XML documentation comments for ///. Intellisense utilisera les commentaires récapitulatifs lors de la saisie. Ils seront disponibles à partir d'autres projets après la compilation du projet référencé.

Pour créer la documentation externe, vous devez générer un fichier XML via le chemin Project Settings> Build> XML documentation file: Qui contrôle le /doc option. Vous aurez besoin d'un outil externe qui prendra le fichier XML en entrée et générera la documentation dans votre choix de formats de sortie.

Sachez que la génération du fichier XML peut considérablement augmenter votre temps de compilation.

1
Suncat2000

Solmead a la bonne réponse. Pour plus d'informations, vous pouvez consulter commentaires XML .

0
Ed S.