ReSharper,未使用的参数和DbC,断言等?

时间:2009-07-29 10:56:37

标签: resharper

如果我有以下内容:

void Foo(Bar bar, Baz baz)
{
    // Do something with bar, but not with baz.
}

...然后ReSharper警告我“参数'baz'从未使用过。”并将颜色变为灰色。这是一个有用的提示,我可能想要摆脱它。

另一方面,如果我有以下内容:

void Foo(Bar bar, Baz baz)
{
    Require.ArgumentNotNull(bar);
    Require.ArgumentNotNull(baz);

    // Some code that used to do something with bar and baz,
    // but has been changed to no longer use baz.
}

...然后ReSharper认为'baz'被使用了,并没有警告我。是否有一个ReSharper注释,我可以在ArgumentNotNull上使用它告诉ReSharper这个方法没有真正“使用”参数,还是仍然发出提示?

1 个答案:

答案 0 :(得分:3)

如果使用[AssertionMethod]属性(来自ReSharper注释库)注释“Require.ArgumentNotNull”方法,则ReSharper将发出“参数仅用于前提条件检查”警告。

看起来这样可以解决您的问题。

注意:这适用于ReSharper 7.0,需要检查旧版本将如何处理此问题。