3

PersonBaseClass とそれから派生した EmployeeClass があります。ここで、Resharper の「メンバーの実装」を使用する (または手動で実装する) ときに、メソッド本体にもそれを配置する BaseClass のコメントとしてメソッド本体を定義したいと思います。

そのようなもの(おおよそ):

public abstract class PersonBaseClass : DependencyObject
{
   //<methodComment>
   // object connectionString;
   // _configurations.TryGetValue("ConnectionString", out connectionString);
   //</methodComment>
   protected abstract void InstanceOnPersonChanged(object sender, EventArgs eventArgs);
}

実装すると、次のようになります。

public class EmployeeClass : PersonBaseClass
{
    protected override void InstanceOnPersonChanged(object sender, EventArgs eventArgs)
    {
        // object connectionString;
        // _configurations.TryGetValue("ConnectionString", out connectionString);
    }
}

それはどういうわけかすでに可能ですか?これをGhostDocで動作させることができませんでした。

編集: BaseClass をライブラリに入れたいのですが、その実装は通常毎回同じように見えるので便利です。

4

1 に答える 1

4

あなたが求めているものとは正確には異なりますが、 Ghostdocを使用して継承されたメンバーにコメントをプルできます。コメントは派生クラス メソッドの本体には追加されませんが、コメント セクションに追加されることに注意してください。

このようなクラスがあり、コメント付きでHey, this is great method :)

public abstract class PersonBaseClass
{
    /// <summary>
    /// Hey, this is great method :)
    /// </summary>
    /// <param name="sender">The sender.</param>
    /// <param name="eventArgs">The <see cref="EventArgs" /> instance containing the event data.</param>
    protected abstract void InstanceOnPersonChanged(object sender, EventArgs eventArgs);
}

次に、派生クラスを追加し、このようにメンバーをオーバーライドします

public class EmployeeClass : PersonBaseClass
{
    protected override void InstanceOnPersonChanged(object sender, EventArgs eventArgs)
    {
        throw new NotImplementedException();
    }
}

次に、派生クラス メンバーの本体内にカーソルを置き、ctrl+ shift+を押しdます。基本クラスからコメントを取得します。

上記の手順を実行すると、派生クラスは次のようになります。

public class EmployeeClass : PersonBaseClass
{
    /// <summary>
    /// Hey, this is great method :)
    /// </summary>
    /// <param name="sender">The sender.</param>
    /// <param name="eventArgs">The <see cref="EventArgs" /> instance containing the event data.</param>
    /// <exception cref="System.NotImplementedException"></exception>
    protected override void InstanceOnPersonChanged(object sender, EventArgs eventArgs)
    {
        throw new NotImplementedException();
    }
}
于 2014-09-03T14:05:32.020 に答える