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

哪条Resharper/C# .editorconfig规则会将throw new()改写为throw new Exception()?

解决Resharper CLI改写throw new()为throw new Exception()的问题
  • 核心问题出在Resharper的强制抛出表达式使用显式异常类型规则上,你需要在.editorconfig中添加或修改以下配置来禁用该规则:
    # 禁用强制显式异常类型的检查(对应RCS1240规则)
    dotnet_diagnostic.RCS1240.severity = none
    
    或者使用Resharper的风格属性配置:
    csharp_style_prefer_explicit_exception_type_in_throw_expression = false:none
    
  • 配置完成后重新运行Resharper CLI,throw new()就会被保留,不会被自动替换为throw new Exception()。
  • 补充说明:你之前删除的csharp_style_throw_expression仅控制是否允许使用抛出表达式语法,和是否要显式指定异常类型无关,所以删除它无法解决问题。如果上述规则不生效,可以检查是否有控制new表达式显式类型的全局规则,比如csharp_style_prefer_explicit_type_in_new_expression,同样将其设为false:none即可。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.12 00:41:00