7

コード:

public interface IFoo
{
    void Bar();
}

public class FooClass : IFoo
{
    /// <summary> ... </summary>
    /// <seealso cref="?"/> //How do you reference the IFoo.Bar() method
    public void Bar() { }

    /// <summary> ... </summary>
    /// <seealso cref="?"/> //How do you reference the standard Bar() method
    void IFoo.Bar() { }
}

私の推測は次のとおりです。

<seealso cref="IFoo.Bar()"/> //Explicitly implemented interface method
<seealso cref="Bar()"/>      //Standard method

確信はないけど。ECMA ガイドは区別に役立たなかったので、私の推測が正しいという保証を探しているのだと思います。

4

2 に答える 2

1

<seealso cref="IFoo.Bar()"/>Sandcastle Help File Builder を使用した簡単なテストでは、作成されたドキュメントで、リンクがインターフェイス内のメソッドを<seealso cref="Bar()"/>指し、クラス内のメソッドを指していることが明らかになりました。明示的に実装されたメソッドのドキュメントはインターフェイスから継承されるため、実際にはインターフェイス メソッドを指定する必要があります。

編集:ReSharperはまた、明示的に実装されたものではなく、インターフェースメソッドを指す<seealso cref="FooClass.IFoo.Bar()"/>ように文句を言い、それを修正します。<seealso cref="IFoo.Bar()"/>

于 2011-05-14T12:26:00.157 に答える