哪条Resharper/C# .editorconfig规则会将throw new()改写为throw new Exception()?
解决Resharper CLI改写
throw new()为throw new Exception()的问题 - 核心问题出在Resharper的强制抛出表达式使用显式异常类型规则上,你需要在
.editorconfig中添加或修改以下配置来禁用该规则:
或者使用Resharper的风格属性配置:# 禁用强制显式异常类型的检查(对应RCS1240规则) dotnet_diagnostic.RCS1240.severity = nonecsharp_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
相关产品推荐
相关产品推荐

