如何在命名空间级别上使用[UsedImplicitly]属性?

时间:2016-11-04 22:28:52

标签: resharper code-analysis

Resharper具有[UsedImplicitly]属性,该属性忽略未直接引用的属性。建议Jetbrins使用它:https://www.jetbrains.com/help/resharper/2016.1/MemberCanBePrivate.Global.html

有没有办法在命名空间级别应用此属性?或者是否有另一种方法可以忽略给定命名空间中的所有类(可能还有所有子命名空间)?

1 个答案:

答案 0 :(得分:0)

此答案不能回答问题,但可能会有所帮助。

我有一个名为PluginEntryPointAttribute的属性。

public class PluginEntryPointAttribute : Attribute 
{
}

我的代码过去通常是这样的:

[PluginEntryPointAttribute]
[UsedImplicitly]
public void SomeEntryMethod()
{
    // code
}

我需要UsedImplicitly属性,以便重新共享工具不会将我的SomeEntryMethod标记为未使用。


由于[JetBrains.Annotations.MeansImplicitUse],我的新代码看起来像这样:

[JetBrains.Annotations.MeansImplicitUse]
public class PluginEntryPointAttribute : Attribute 
{
}

现在,在我的代码上,我不需要包括UsedImpliscitly属性:

[PluginEntryPointAttribute]
// [UsedImplicitly] no need to use it because PluginEntryPointAttribute has the MeansImplicitUse attribute
public void SomeEntryMethod()
{
    // code
}