C# 重命名命令如何决定要更改的字符串文字?

C# 重命名命令如何决定要更改的字符串文字?,c#,visual-studio,visual-studio-2013,C#,Visual Studio,Visual Studio 2013,Visual Studio中的Rename\uuuuuuuuuuuuuuuuuo命令(CTRL-.重命名声明后)不仅重命名成员和直接依赖项,而且让我最近感到惊讶的是,还以字符串文本形式引用这些成员。这既有用又可怕 更改字符串文字时,重命名命令遵循哪些规则?它相当于一个简单的搜索和替换,还是更复杂的东西?我担心在较大的项目中会出现误报的大规模更改,但是如果操作足够聪明,可以预测,那么我倾向于使用它。使用重构->重命名重命名时,如果您不想搜索字符串文字来查找名称并替换它,那么在重命名对话框中取消选中

Visual Studio中的
Rename\uuuuuuuuuuuuuuuuuo
命令(CTRL-.重命名声明后)不仅重命名成员和直接依赖项,而且让我最近感到惊讶的是,还以字符串文本形式引用这些成员。这既有用又可怕


更改字符串文字时,重命名命令遵循哪些规则?它相当于一个简单的搜索和替换,还是更复杂的东西?我担心在较大的项目中会出现误报的大规模更改,但是如果操作足够聪明,可以预测,那么我倾向于使用它。

使用重构->重命名重命名时,如果您不想搜索字符串文字来查找名称并替换它,那么在重命名对话框中取消选中“搜索字符串”,若不替换注释中该变量的用法,请取消选中“在注释中搜索”。如果您想查看哪些内容会更改以检查误报,那么请检查“预览引用更改”,以便验证它们是否都正确。

这很有趣,当我执行此操作时,它不会更改任何包含相同文本的字符串文本。“以字符串文字引用这些成员”是什么意思?您是否使用诸如Resharper之类的工具?@PeterRitchie这是一个可以启用或禁用的设置。默认情况下,它是禁用的,他打开了它。不使用Resharper。我在两个重命名中都看不到该选项,您可以通过Ctrl+进行重命名。(或Shift+Alt+F10)我确实在编辑/重构/重命名(或F2)中看到了它,但操作使用Ctrl+进行了详细说明。谢谢您的回答。但是它如何执行搜索并替换为字符串文本呢?例如,只需搜索并替换“*membername*”或“*.membername*”或其他更智能的源代码?@DuckMaestro它似乎是在单词边界上搜索的。