You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

为何Rider未高亮C#代码中的部分警告(如CS0279)?

解决Rider未检测到CS0279规则违反的问题

问题说明

代码违反CS0279规则时,Visual Studio会正常高亮警告,但Rider无任何提示,且仅对部分CS*规则提供检测反馈。涉事代码如下:

public class myTest : IEnumerable
{
    IEnumerator IEnumerable.GetEnumerator()
    {
        yield return 0;
    }

    internal IEnumerator GetEnumerator()
    {
        yield return 0;
    }

    public static void Main()
    {
        foreach (int i in new myTest()) {}  // CS0279
    }
}

解决步骤

要让Rider检测到CS0279警告,可按以下操作调整设置:

  • 打开Rider的代码检查设置:依次点击 File > Settings > Editor > Inspection Settings > Inspection Severity(Windows/Linux)或 Rider > Settings > Editor > Inspection Settings > Inspection Severity(Mac)。
  • 查找对应的Roslyn规则:在搜索框中输入CS0279,找到名为“Explicit interface implementation method is hidden by a non-public method”的规则(CS0279对应的Roslyn分析规则)。
  • 调整规则的严重性:将该规则的严重性从Do not show改为Warning或其他需要的级别,点击Apply保存设置。
  • 强制重新分析解决方案:点击菜单栏 Code > Inspect Code,选择整个解决方案进行重新分析,此时Rider就会高亮显示CS0279的警告。

补充说明

Rider默认可能未启用全部Roslyn分析规则,若遇到其他CS*规则无提示的情况,可按同样步骤在Inspection Severity中查找对应CS规则并启用。

内容的提问来源于stack exchange,提问作者Nikita Romashov

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.04 02:48:20