Szukaj…


Uwagi

Czasami musisz stworzyć rozszerzoną dokumentację tekstową z twoich komentarzy xml. Niestety nie ma na to standardowego sposobu .

Istnieją jednak osobne projekty, których można użyć w tym przypadku:

Prosta adnotacja do metody

Komentarze do dokumentacji są umieszczane bezpośrednio nad opisaną metodą lub klasą. Zaczynają się od trzech ukośników /// i pozwalają na przechowywanie meta informacji przez XML.

/// <summary>
/// Bar method description
/// </summary>
public void Bar()
{ 
        
}

Informacje wewnątrz tagów mogą być wykorzystywane przez Visual Studio i inne narzędzia do świadczenia usług, takich jak IntelliSense:

Metoda adnotacji w przykładzie xml

Zobacz także listę typowych znaczników dokumentacji firmy Microsoft .

Komentarze dotyczące interfejsu i dokumentacji klas

/// <summary>
/// This interface can do Foo
/// </summary>
public interface ICanDoFoo
{
    // ... 
}

/// <summary>
/// This Bar class implements ICanDoFoo interface
/// </summary>
public class Bar : ICanDoFoo
{
    // ...
}

Wynik

Podsumowanie interfejsu

podsumowanie interfejsu

Podsumowanie zajęć

podsumowanie zajęć

Dokumentacja metody komentarza z parametrami i zwraca elementy

/// <summary>
/// Returns the data for the specified ID and timestamp.
/// </summary>
/// <param name="id">The ID for which to get data. </param>
/// <param name="time">The DateTime for which to get data. </param>
/// <returns>A DataClass instance with the result. </returns>
public DataClass GetData(int id, DateTime time)
{
   // ...
}

IntelliSense pokazuje opis każdego parametru:

komentarz do parametru

Wskazówka: Jeśli Intellisense nie wyświetla się w Visual Studio, usuń pierwszy nawias lub przecinek, a następnie wpisz go ponownie.

Generowanie XML na podstawie komentarzy do dokumentacji

Aby wygenerować plik dokumentacji XML z komentarzy dokumentacji w kodzie, użyj opcji /doc z kompilatorem csc.exe C #.

W Visual Studio 2013/2015, W projekcie -> Właściwości -> Kompilacja -> Dane wyjściowe zaznacz pole wyboru XML documentation file :

Plik dokumentacji XML

Podczas budowania projektu kompilator wygeneruje plik XML o nazwie odpowiadającej nazwie projektu (np. XMLDocumentation.dll -> XMLDocumentation.xml ).

Gdy używasz zestawu w innym projekcie, upewnij się, że plik XML znajduje się w tym samym katalogu, do którego odwołuje się biblioteka DLL.

Ten przykład:

/// <summary>
/// Data class description
/// </summary>
public class DataClass
{
    /// <summary>
    /// Name property description
    /// </summary>
    public string Name { get; set; }
}


/// <summary>
/// Foo function
/// </summary>
public class Foo
{
    /// <summary>
    /// This method returning some data
    /// </summary>
    /// <param name="id">Id parameter</param>
    /// <param name="time">Time parameter</param>
    /// <returns>Data will be returned</returns>
    public DataClass GetData(int id, DateTime time)
    {
        return new DataClass();
    }
}

Tworzy ten plik XML w kompilacji:

<?xml version="1.0"?>
<doc>
    <assembly>
        <name>XMLDocumentation</name>
    </assembly>
    <members>
        <member name="T:XMLDocumentation.DataClass">
            <summary>
            Data class description
            </summary>
        </member>
        <member name="P:XMLDocumentation.DataClass.Name">
            <summary>
            Name property description
            </summary>
        </member>
        <member name="T:XMLDocumentation.Foo">
            <summary>
            Foo function
            </summary>
        </member>
        <member name="M:XMLDocumentation.Foo.GetData(System.Int32,System.DateTime)">
            <summary>
            This method returning some data
            </summary>
            <param name="id">Id parameter</param>
            <param name="time">Time parameter</param>
            <returns>Data will be returned</returns>
        </member>
    </members>
</doc>

Odwoływanie się do innej klasy w dokumentacji

Tag <see> może być użyty do połączenia z inną klasą. Zawiera on element cref który powinien zawierać nazwę klasy, do której należy się odwoływać. Visual Studio zapewni Intellsense podczas pisania tego znacznika, a takie odniesienia będą przetwarzane również podczas zmiany nazwy klasy, do której istnieje odniesienie.

/// <summary>
/// You might also want to check out <see cref="SomeOtherClass"/>.
/// </summary>
public class SomeClass
{
}

W wyskakujących oknach Intellisense programu Visual Studio takie odniesienia będą również wyświetlane w kolorze w tekście.

Aby odwołać się do klasy ogólnej, użyj czegoś podobnego do następującego:

/// <summary>
/// An enhanced version of <see cref="List{T}"/>.
/// </summary>
public class SomeGenericClass<T>
{
}


Modified text is an extract of the original Stack Overflow Documentation
Licencjonowany na podstawie CC BY-SA 3.0
Nie związany z Stack Overflow