从添加批注停止ReSharper的(Stop ReSharper from Adding Annot

2019-08-17 17:19发布

我在我的C#项目使用ReSharper的,一般我喜欢它。 然而,它使添加注释的代码时,我做一些重构行为。

例如,它增加了[NotNull]当我使用方面的行动了“零检查参数”:

// Before context action
public void Foo(object input)
{
}

// After context action
public void Foo([NotNull] object input)
{
    if (input == null)
    {
        throw new ArgumentNullException("input");
    }
}

另外,ReSharper的然后将using JetBrains.Annotations的文件,即使我没有引用其中属性定义JetBrains的装配。

我想继续使用上下文的动作,因为他们是非常有用的,但我不能在代码中引入外部注解。 ReSharper的提供更改默认的注释命名空间和注释属性的源代码复制到你的项目的选项,但是这也不是这个项目的选项。

有没有办法告诉ReSharper的完全停止添加注释吗? 我试图在取消选中JetBrains.Annotations与代码注释属性的名称空间的选项,但似乎并没有对是否在第一时间产生的注解任何影响。

更新:虽然我实际上并没有引用JetBrains.Annotations.dll,我引用另一个DLL,它重新实现在同一个命名空间JetBrains.Annotations同样标注属性。 删除该DLL引用将防止从ReSharper的添加注释。 这会是很好,如果有仍然关闭这个功能选项,但解决方法适合于这种情况。

Answer 1:

当您引用JetBrains.Annotations.dll,对“为空检查参数”的默认操作似乎是使用NotNull属性(尽管增加一个选项“与‘NotNullAttribute’注解”。

我所知道的唯一的解决方法是不参考JetBrains.Annotations.dll

更新:

寻找更成这样,似乎有人建议/错误, [NotNull]时请求注释DLL包括在内,“检查参数空”添加: http://youtrack.jetbrains.com/issue/RSRP- 70350万一别人发生过这个并想知道为什么



文章来源: Stop ReSharper from Adding Annotations