c# - 使用 ReSharper 可以选择规则以确保返回的值是 C# 的文字或变量
问题描述
这个问题是关于 ReSharper 是否支持这样的事情以及如何打开这样的规则检查。这不是关于特定编码风格或标准选择或优点的问题。
我正在尝试自动检查(最好是替换)各种 C# 返回代码模式。特别是我希望检测以下内容并让 reshaper 提出提示/建议
return SomeFunc(someArgs);
return condition ? litteralA : litteralB;
return someObject.SomeFunction();
以下不需要突出显示(但我会接受他们被当作无辜的旁观者)
return someObject.SomePropertyOrField;
不得错误地检测/突出显示以下内容(理想情况下,ReSharper 会尽可能进行简单的转换)
var someVal = SomeFunc(someArgs);
return someVal;
var result = condition ? litteralA : litteralB;
return result;
var state = someObject.SomeFunction();
return state;
return SomeClass.SomeConst;
return true;
return 0;
return LocalConst;
ReSharper 的最新版本可以做到这一点,如果可以,我该如何配置它来做到这一点
我无法从功能列表或查看 ReSharper 试用版的检查选项中看到我将如何做到这一点;但我不知道如果确实存在这样的规则会被称为什么。如果这实际上是可能的,那么我想在编写我的代码检查实用程序之前知道。
解决方案
我不打算讨论你为什么想要这个;我相信你有一个理由(如果你与我们其他人分享这将是很棒的),但这里有一个解决方案:
您可以Custom Patterns
像这样使用(选项|代码检查|自定义模式):
在此处查看更多信息:ReSharper - 结构搜索和替换