Partager via


cref, attribut (Guide de programmation C#)

L'attribut cref dans une balise de documentation XML signifie « référence de code ». Il indique que le texte interne de la balise est un élément de code, tel qu'un type, une méthode ou une propriété. Les outils de documentation comme Sandcastle utilisent les attributs cref pour générer automatiquement des liens hypertexte vers la page où le type ou le membre est documenté.

Exemple

L'exemple suivant montre les attributs cref utilisés dans des balises <see>.

// Save this file as CRefTest.cs 
// Compile with: csc CRefTest.cs /doc:Results.xml  

namespace TestNamespace
{
    /// <summary> 
    /// TestClass contains several cref examples. 
    /// </summary> 
    public class TestClass
    {
        /// <summary> 
        /// This sample shows how to specify the <see cref="TestClass"/> constructor as a cref attribute.�
        /// </summary> 
        public TestClass()
        { }

        /// <summary> 
        /// This sample shows how to specify the <see cref="TestClass(int)"/> constructor as a cref attribute.�
        /// </summary> 
        public TestClass(int value)
        { }

        /// <summary> 
        /// The GetZero method. 
        /// </summary> 
        /// <example>  
        /// This sample shows how to call the <see cref="GetZero"/> method.
        /// <code> 
        /// class TestClass  
        /// { 
        ///     static int Main()  
        ///     { 
        ///         return GetZero(); 
        ///     } 
        /// } 
        /// </code> 
        /// </example> 
        public static int GetZero()
        {
            return 0;
        }

        /// <summary> 
        /// The GetGenericValue method. 
        /// </summary> 
        /// <remarks>  
        /// This sample shows how to specify the <see cref="GetGenericValue"/> method as a cref attribute.
        /// </remarks> 

        public static T GetGenericValue<T>(T para)
        {
            return para;
        }
    }

    /// <summary> 
    /// GenericClass. 
    /// </summary> 
    /// <remarks>  
    /// This example shows how to specify the <see cref="GenericClass{T}"/> type as a cref attribute.
    /// </remarks> 
    class GenericClass<T>
    {
        // Fields and members.
    }

    class Program
    {
        static int Main()
        {
            return TestClass.GetZero();
        }
    }
}

Une fois compilé, le programme produit le fichier XML suivant. Notez que l'attribut cref pour la méthode GetZero, par exemple, a été transformé par le compilateur sur "M:TestNamespace.TestClass.GetZero". Le préfixe « M » : signifie « méthode » et représente une convention reconnue par les outils de documentation tels que Sandcastle. Pour obtenir une liste complète de préfixes, consultez Traitement du fichier XML (Guide de programmation C#).

<?xml version="1.0"?>
<doc>
    <assembly>
        <name>CRefTest</name>
    </assembly>
    <members>
        <member name="T:TestNamespace.TestClass">
            <summary>
            TestClass contains cref examples.
            </summary>
        </member>
        <member name="M:TestNamespace.TestClass.#ctor">
            <summary>
            This sample shows how to specify the <see cref="T:TestNamespace.TestClass"/> constructor as a cref attribute. 
            </summary>
        </member>
        <member name="M:TestNamespace.TestClass.#ctor(System.Int32)">
            <summary>
            This sample shows how to specify the <see cref="M:TestNamespace.TestClass.#ctor(System.Int32)"/> constructor as a cref attribute. 
            </summary>
        </member>
        <member name="M:TestNamespace.TestClass.GetZero">
            <summary>
            The GetZero method.
            </summary>
            <example> 
            This sample shows how to call the <see cref="M:TestNamespace.TestClass.GetZero"/> method.
            <code>
            class TestClass 
            {
                static int Main() 
                {
                    return GetZero();
                }
            }
            </code>
            </example>
        </member>
        <member name="M:TestNamespace.TestClass.GetGenericValue``1(``0)">
            <summary>
            The GetGenericValue method.
            </summary>
            <remarks> 
            This sample shows how to specify the <see cref="M:TestNamespace.TestClass.GetGenericValue``1(``0)"/> method as a cref attribute.
            </remarks>
        </member>
        <member name="T:TestNamespace.GenericClass`1">
            <summary>
            GenericClass.
            </summary>
            <remarks> 
            This example shows how to specify the <see cref="T:TestNamespace.GenericClass`1"/> type as a cref attribute.
            </remarks>
        </member>
    </members>    <members>
        <member name="T:TestNamespace.TestClass">
            <summary>
            TestClass contains two cref examples.
            </summary>
        </member>
        <member name="M:TestNamespace.TestClass.GetZero">
            <summary>
            The GetZero method.
            </summary>
            <example> This sample shows how to call the <see cref="M:TestNamespace.TestClass.GetZero"/> method.
            <code>
            class TestClass 
            {
                static int Main() 
                {
                    return GetZero();
                }
            }
            </code>
            </example>
        </member>
        <member name="M:TestNamespace.TestClass.GetGenericValue``1(``0)">
            <summary>
            The GetGenericValue method.
            </summary>
            <remarks> 
            This sample shows how to specify the <see cref="M:TestNamespace.TestClass.GetGenericValue``1(``0)"/> method as a cref attribute.
            </remarks>
        </member>
        <member name="T:TestNamespace.GenericClass`1">
            <summary>
            GenericClass.
            </summary>
            <remarks> 
            This example shows how to specify the <see cref="T:TestNamespace.GenericClass`1"/> type as a cref attribute.
            </remarks>
        </member>
    </members>
</doc>

Voir aussi

Référence

Commentaires de documentation XML (Guide de programmation C#)

Balises recommandées pour commentaires de documentation (Guide de programmation C#)