Мне любопытно, почему я получаю предупреждение компилятора в следующей ситуации.
/// <summary>This is class A
/// </summary>
public class A
{
/// <summary>This is the documentation for Method A
/// </summary>
public void MethodA()
{
//Do something
}
}
/// <summary>This is class B
/// </summary>
public class B : A
{
/// <summary>This does something that I want to
/// reference <see cref="MethodA"/>
/// </summary>
public void MethodB()
{
//Do something
}
}
В предупреждении говорится, что «XML-комментарий к« B.MethodB () »имеет атрибут cref« MethodA », которыйне может быть решена ".Если B наследуется от A, не должен ли компилятор видеть этот метод при создании документации, если я не укажу родительский класс в cref?Если я изменю cref на cref="A.MethodA()"
, он будет работать нормально, но кажется, что в этом нет необходимости, и это трудная задача, особенно если мне нужно подняться более чем на один уровень.
В качестве примечания для любого, кто тестирует это, вы должны быть уверены, что «XML документация» отмечена в Свойствах -> Сборка, чтобы увидеть предупреждение.