Resharper模式用于区分大小写的字符串比较

时间:2011-03-25 21:58:00

标签: .net resharper pattern-matching

我正在尝试将Resharper模式添加到Pattern Catalog中以进行字符串比较。最后,当我碰到像string1 == string2这样的代码并提示我用string1.Equals(string2, StringComparison.OrdinalIgnoreCase)替换它时,我希望它能够提醒我。从这里开始,我可以将其更改为适当的情况,但强制使用Equals和比较选项的初始步骤使得比较的意图更加明显。

我可以通过创建搜索模式来实现:

$string1$ == $string2$

创建替换模式:

$string1$.Equals($string2$, StringComparison.OrdinalIgnoreCase)

$ string1 $和$ string2 $都是“String(或派生类型)”类型的“表达式”。这是一个很好的开始,因为即使我希望它是一个区分大小写的搜索,我会看到选项,并会改变它们。

我遇到的问题是现在它也在string == null警告我。有没有办法让它在搜索中排除null

1 个答案:

答案 0 :(得分:0)

据我所知documentation,无法在这些表达式上设置“is not null”等条件。

如果你觉得自己很勇敢,可以先替换

$string$ == null

String.IsNullOrEmpty($string$)

在适当的地方。但的意思完全相同。