IntelliSense и комментарии с тройной косой чертой в пакетах

Я разработал библиотеку кода, которую тщательно документировал.

Классы, методы и свойства комментируются с использованием комментариев XML (xmldoc) с тройной косой чертой.

/// <summary>
/// Adds two numbers together.
/// </summary>
/// <param name="a">The first number.</param>
/// <param name="b">The second number.</param>
/// <returns>The sum.</returns>
public int Add(int a, int b)
{
    return a + b;
}

Но когда я компилирую это в файл DLL и ссылаюсь на него из другого моего проекта или упаковываю его как пакет NuGet, на который я ссылаюсь, тогда Visual Studio/IntelliSense не предоставляет никакой документации для моей библиотеки.

Почему так и что я могу с этим сделать?


person Fred    schedule 18.10.2016    source источник


Ответы (2)


Я не уверен на 100%, решит ли это вашу проблему, но вы пытались создать файл документа xml. если он упакован с dll, он может быть обнаружен intelliSense.

введите описание изображения здесь

person LiamHarries    schedule 18.10.2016
comment
Спасибо, это привело меня в правильном направлении. Документация теперь работает при использовании NuGet. - person Fred; 19.10.2016

Компилятор удаляет все комментарии из результирующих комментариев, поэтому при прямой ссылке на сборку с помощью ее .DLL IntelliSense не может предоставить какую-либо документацию.

Включив вывод «файла документации XML» в свойствах проекта, компилятор выводит файл .xml в дополнение к скомпилированному файлу .dll. При использовании NuGet для создания пакета (выполняется с помощью dotnet pack -c release) он включает XML-файл документации, если он есть, поэтому пакеты, установленные с помощью NuGet, предоставляют документацию для IntelliSense, если она есть.

person Fred    schedule 19.10.2016