【问题标题】:Interface commenting and inheritence接口注释和继承
【发布时间】:2011-06-15 19:20:24
【问题描述】:

搜索一下,我发现thepast 中提出了这种问题,但不是针对 VS2010 或 C# .Net 4. 有没有人遇到过一种方法来让接口 cmets 继承到实现用于智能感知的类?

一位同事建议复制并粘贴到实现中,但必须有更好的方法。查看前面的问题建议 Sandcastle 似乎是一个文档生成器,这不是我需要的。

考虑以下几点:

public interface IFoo
{
    /// <summary>
    /// Comment comment comment
    /// </summary>
    string Bar { get; set; }
}

public class Foo : IFoo
{
    public string Bar { get; set; }
}

public class Test
{
    public Test()
    {
        IFoo foo1 = new Foo();
        foo1.Bar = "Intellisense comments work";

        Foo foo2 = new Foo();
        foo2.Bar = "Intellisense comments don't work";
    }
}

有没有办法让 foo2 上的智能感知工作?

【问题讨论】:

标签: visual-studio-2010 c#-4.0 comments


【解决方案1】:

不改变 VS 中的 IntelliSense 是无法自动完成的。

我的一位同事使用 ReSharper (http://www.jetbrains.com/resharper/),我请他试用您的代码 - 它确实可以满足您的要求,因为它扩展了智能感知VS。你可能想调查一下。

但是,对我来说,实现这一点的最简单方法是 GhostDoc 的免费版本 - http://submain.com/products/ghostdoc.aspx,它使方法/属性的基本文档成为一个单一的组合键。

缺点是它克隆文档,因此如果基础文档发生更改,您必须记住在派生类/接口上清除它并重新生成它。

当然,ReSharper 解决方案不会遇到这个问题,因此您支付您的钱(字面意思是,在 ReSharper 的情况下)并做出选择。当然,可能还有其他免费插件可以实现这一点。

【讨论】:

  • Resharper 完成了这项工作,我只需要看看我现在是否可以获得一些许可证。谢谢
猜你喜欢
  • 2013-08-31
  • 2010-10-21
  • 2011-04-15
  • 2010-09-21
  • 1970-01-01
  • 2011-07-31
  • 2011-10-05
相关资源
最近更新 更多