c#方法中多个丢弃变量的正确格式是什么

问题描述

我有一个由外部 api 调用方法,该方法期望该方法具有这些特定参数

        public static bool DoSomething(
            int x,int y
        ) =>
            true;

Rosyln 代码分析报告了 IDE0060 消息,如文档所示 here

确切的消息是

Warning IDE0060 Remove unused parameter 'y' if it is not part of a shipped public API

我将“x”替换为“_”

'y' 应该用什么代替?

__ (双下划线) -- 编译器抱怨未使用 __ (相同的 IDE0060 消息)

_ (单下划线) -- 编译器抱怨参数名 _ 重复(CS0100 错误

_1(下划线后跟一个数字)——编译器抱怨 _1 是一个未使用的参数(RCS1163 消息)

解决方法

roslyn 分析器和 roslynator 分析器之间似乎存在意见分歧

roslyn - _1 是正确的丢弃参数格式

roslynator - __ 是正确的丢弃参数格式

暂时,

  • 采用 roslyn 格式,
  • 抑制 roslynator 消息,
  • 在 roslynator 存储库中创建了一个问题 (#770)