Visual Studio: комментарии к документам, которые обновляются при переименовании классов/полей/методов

У меня есть класс (написанный на С#) с некоторыми комментариями к документации:

/// <summary>
/// Abstract class defining a tolerance-based method for Equals.
/// Tolerance must be defined in a derived class like this:
/// <code>class MyPrec : Precision { private MyPrec() : base(42) {} }</code>
/// (This subclass will have a tolerance of 42.)
/// </summary>
public abstract class Precision
{
    protected readonly double TOL;

    protected Precision(double tol)
    {
        TOL = tol;
    }

    /// <summary>
    /// Checks if two doubles are equal up to numerical tolerance given by TOL.
    /// </summary>
    /// <param name="left">First double.</param>
    /// <param name="right">Second double.</param>
    /// <returns>True if the absolute value of the difference is at most TOL,
    ///          false otherwise.</returns>
    public bool Equals(double left, double right)
    {
        return Math.Abs(left - right) <= TOL;
    }

    /// <summary>
    /// Not Equals.
    /// </summary>
    public bool NotEquals(double left, double right)
    {
        return !Equals(left, right);
    }
}

Если я переименую параметр left в методе Equals с помощью функции переименования Visual Studio, он также автоматически переименуется в комментарии к документации. Но похоже, что это работает только для непосредственных параметров.

Как написать комментарии к документации, чтобы следующие слова также обновлялись Visual Studio при переименовании соответствующего класса/поля/метода?

  • Precision в примере кода сводного комментария класса Precision

        /// <code>class MyPrec : Precision { private MyPrec() : base(42) {} }</code>
    
  • TOL в комментарии возврата метода Equals

    /// <returns>True if the absolute value of the difference is at most TOL,
    
  • Equals в итоговом комментарии NotEquals

    /// Not Equals.
    

Я использую Visual Studio 2015.

я уже пробовал

    /// <returns>True if the absolute value of the difference is at most <paramref name="TOL"/>,

Но это не работает. В конце концов, это не входной параметр.


person Kjara    schedule 25.07.2016    source источник
comment
Пожалуйста, разместите свой связанный вопрос как отдельный вопрос.   -  person Peter Macej    schedule 25.07.2016


Ответы (1)


  • Точность, я думаю, это невозможно. Комментарий внутри тега ‹code› представляет собой произвольный текст.
  • Для TOL и Equals это просто. Используйте тег ‹see›, когда ссылаетесь на другой элемент кода в своем Комментарии. К таким элементам будет применено переименование. В вашем случае комментарий будет таким:

    /// <returns>True if the absolute value of the difference is at most <see cref="TOL"/>,
    

и

    /// Not <see cref="Equals"/>.
person Peter Macej    schedule 25.07.2016