关于IsNullOrWhiteSpace()的快速提示中的"字符串"与"字符串"

9 c# visual-studio-2015

在Visual Studio 2015中工作,我有一个条件检查效果:

if(String.IsNullOrWhiteSpace(stringToTest))
Run Code Online (Sandbox Code Playgroud)

我看到一个IDE001 快速提示或动作建议"名称可以简化",建议更正:

if(string.IsNullOrWhiteSpace(stringToTest))
Run Code Online (Sandbox Code Playgroud)

唯一的区别是使用string而不是String.

完全快速


MSDN示例使用大写字母S String,这个SO答案澄清" string在C#中是别名System.String.所以从技术上讲,没有区别."

要明确的是,我的问题依赖于字符串与字符串中的答案,但我有一个不同于那里的问题.

这个问题也是相关的,尽管那里的答案并没有真正解决这个问题.这个特殊问题与我的问题非常相似,但它被标记为我注意到的另一个SO问题的副本.而有评论由OP表示,这是全新的行为仅出现在2015年.


我的问题

我的问题是,如果两个变量类型是等价的,和MS的例子使用大写版本,为何会出现快速的操作来使用小写版本? .NET 4.6框架和VS2015是否有变化以鼓励使用小写版本?看起来我不应该看到这种类型的小费.

Lig*_*ica 3

我只是推测,但在我看来,快速提示旨在帮助您简化System.Stringstring,忽略您的 s 使其变得多余的事实using,至少在字符计数方面。

称其为一个错误(尽管是一个非常小的错误),或者至少是 IDE 变得过于热心。有人可能会说,从更广泛的意义上来说,这是一种有效的简化,特别是如果您要在代码中一致地使用这些短“别名”。作为一名 C++ 开发人员,我并没有真正看到这一点,但你就知道了。