如何告诉ReSharper一个属性意味着使用了一个方法? [英] How do I tell ReSharper that an attribute means that a method is used?
本文介绍了如何告诉ReSharper一个属性意味着使用了一个方法?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我在玩SpecFlow,ReSharper认为我的步骤定义没有使用(我猜是因为它们是通过反射使用的):
[Binding]
public class StepDefinitions
{
// ...
[When(@"I press add")]
public void WhenIPressAdd() // R# thinks this is unused
{
_calculator.PressAdd();
}
// ...
}
如何告诉ReSharper具有[Given]
、[When]
、[Then]
属性(等)方法是不是真的用过了?我不想使用// ReSharper disable UnusedMember.Global
评论。
我还可以用[JetBrains.Annotations.UsedImplicitly]
标记每个方法(或整个类)。我也不是特别想这么做。
推荐答案
您需要使用JetBrains注释,并用MeansImplicitUseAttribute
标记属性。您可以直接引用JetBrains.Annotations.dll
,也可以将批注源代码(从ReSharper/选项/代码检查/代码批注)复制到您的解决方案中。
如果您需要批注一些不属于您的外部程序集,则需要在以下文件夹中创建一个外部批注文件(XML):%ReSharperInstallDir%BinExternalAnnotations
。有很多例子,你可以照搬一些。
如果您将其命名为DllNameWithoutExtension.ExternalAnnotations.xml
,则外部批注文件也可以与DLL位于相同的路径中。
这篇关于如何告诉ReSharper一个属性意味着使用了一个方法?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文