C#:如何表明假定未使用的方法正在从项目外部使用?

C#:如何表明假定未使用的方法正在从项目外部使用?,c#,unity3d,C#,Unity3d,我正在将Unity与其他平台结合使用,如Android和iOS。我的Unity脚本中有一些方法是从Android或iOS调用的,例如 public void ApplyEffect() { //Some code } 此方法仅从Android或iOS调用,不在Unity代码中引用。因此,我看到了警告 Method 'ApplyEffect' is never used 但更重要的是,这些方法让其他人感到困惑,因为它给人的印象是这些方法没有被使用 我想有一种方法表明这些方法正在被使用,

我正在将
Unity
与其他平台结合使用,如
Android
iOS
。我的Unity脚本中有一些方法是从
Android
iOS
调用的,例如

public void ApplyEffect()
{
    //Some code
}
此方法仅从
Android
iOS
调用,不在Unity代码中引用。因此,我看到了警告

Method 'ApplyEffect' is never used
但更重要的是,这些方法让其他人感到困惑,因为它给人的印象是这些方法没有被使用

我想有一种方法表明这些方法正在被使用,这样就不会有人错误地删除它们。我觉得有一些表示也会使代码更具可读性。但是我该怎么做呢

Jetbrains Rider有一个
usedimplicity
注释,看起来很完美,但我认为它可能无法在其他编辑器上工作。评论是一种选择,但这似乎不是一个好的解决方案


有什么建议吗?谢谢

我认为此警告仅由ReSharper本身抛出,而不是本机的C#警告

正如您已经提到的,您可以使用ReSharper中的属性来消除警告,但正如您所指出的,不使用ReSharper或Jetbrains的人不知道该属性的用途,但也不会首先获得警告。因此,它仍然需要一条注释来解释属性的作用以及它存在的原因(此时,您可以让注释解释它首先在那里使用)

另一个选项(仅适用于JetBrains/ReSharper用户)是关闭应该阻止ReSharper检查该警告的选项,但这可能不是一个令人满意的解决方案,因为您使用它可能是因为您需要该功能

一个更有针对性的解决方案是在方法
ApplyEffect
的最开始处设置警告,该方法应该仅对该方法禁用警告,同时对于非ReSharper用户来说仍然非常清晰


简言之,由于它是一个ReSharper/Jetbrains警告,因此需要一个ReSharper/Jetbrains解决方案,唯一的“全局”解决方案将是注释该方法的实际使用以及调用位置。(在我个人看来,这是一条正确的道路)

我认为这条警告只是由ReSharper本身发出的,而不是一条天生的C#警告

正如您已经提到的,您可以使用ReSharper中的属性来消除警告,但正如您所指出的,不使用ReSharper或Jetbrains的人不知道该属性的用途,但也不会首先获得警告。因此,它仍然需要一条注释来解释属性的作用以及它存在的原因(此时,您可以让注释解释它首先在那里使用)

另一个选项(仅适用于JetBrains/ReSharper用户)是关闭应该阻止ReSharper检查该警告的选项,但这可能不是一个令人满意的解决方案,因为您使用它可能是因为您需要该功能

一个更有针对性的解决方案是在方法
ApplyEffect
的最开始处设置警告,该方法应该仅对该方法禁用警告,同时对于非ReSharper用户来说仍然非常清晰

简言之,由于它是一个ReSharper/Jetbrains警告,因此需要一个ReSharper/Jetbrains解决方案,唯一的“全局”解决方案将是注释该方法的实际使用以及调用位置。(在我个人看来,这是一种方法)

你可以在代码周围使用
#pragma warning disable(err nbr)
#pragma warning restore(err nbr)
来向其他开发人员表明你的意图。你可以使用
#pragma warning disable(err nbr)
#pragma warning restore(err nbr)
围绕代码向其他开发人员传达您的意图。