一些ReSharper键映射不起作用。如何通过重构添加参数?

时间:2010-10-14 14:55:18

标签: visual-studio visual-studio-2008 resharper resharper-5.0

我在VS 2008 SP1上运行了C#ReSharper 5.0。大多数组合键(例如(Ctrl + R,Ctrl + R)用于重命名标识符或(Ctrl + Shift + T)用于转到文件。

我想我会尝试其他一些重构,比如在方法中添加参数,但是当我将光标放在私有方法上时,我得到以下错误。

  

组合键(Ctrl + R,Ctrl + P)   必然会命令   (ReSharper_IntroParameter)是哪个   目前无法使用

我可以使用(Ctrl + R,Ctrl + R)轻松重命名此方法。是我,还是ReSharper在这里失败了?

3 个答案:

答案 0 :(得分:2)

  

当我将光标放在私有方法

上时

介绍参数重构仅在您将方法中的标识符或值作为参数时才可用。听起来你想要更改签名重构,只要插入点在方法名称上,就可以通过 Ctrl + R Ctrl + S 获得

您可以通过 Ctrl + Shift + R 查看(部分)上下文,这是ReSharper | Refactor | Refactor this...的快捷方式

答案 1 :(得分:1)

根据错误消息,键映射工作正常。 Visual Studio正在查找并尝试执行该命令。命令本身报告自己是不可靠的。

这可能表明“IntroParameter”命令在您尝试使用它的contxt中根本不可用。

答案 2 :(得分:1)

我认为您可能会将“引入参数”与“向参数添加参数”的概念混淆。我不相信ReSharper 的快捷方式只是向方法添加参数。 “引入参数”用于选择表达式并应用该快捷方式,因此ReSharper将根据该表达式向当前方法添加参数。这意味着您突出显示的任何表达式都将移动到方法的调用者,并作为该新参数的参数传递。