为什么在Visual Studio 2015中string.IsNullOrEmpty优于String.IsNullOrEmpty?

时间:2015-10-01 03:21:17

标签: c# visual-studio-2015

我多年来一直在编写String.IsNullOrEmpty,在Visual Studio 2015中,IDE建议将其重构为string.IsNullEmpty,为什么?你会做什么?

我很清楚String和string背后的内容,但是,我只是想知道为什么VS 2015会给我一个我不需要的提示。

2 个答案:

答案 0 :(得分:7)

这是由于“代码样式”选项,位于:

  

工具/选项/文字编辑器/ C#/代码风格

取消选中以下选项,它应该停止向您发出警告。

enter image description here

如果您发现这些样式很有用,那么它们会强制您希望警告的代码具有一定的一致性,然后将其选中。就个人而言,我只是取消选中它。

答案 1 :(得分:2)

  

IDE建议将其重构为string.IsNullEmpty,为什么?

实际上Stringstring之间没有区别,因为两者都是相同的,而string只是一个别名。如果VS仍然抱怨重新分解它,那可能是因为一些FxCop代码分析规则。您可能需要验证相同的内容。

在我的一项工作经验中,他们使用FxCop自定义规则设置来使用实际的类型名称而不是别名,例如使用String而不是string(或者){{1而不是Int32