自动重构以向方法调用添加参数名称

我正在进行大规模的重构。

我有很多方法,通过位置参数调用。 现在我想通过命名参数调用它们。 这些方法存在于几个非inheritance的类中,并且具有相同的名称,并且它们的签名不同。 例:

定义

public class Foo { public static Foo Create(int count, string name) { ... } } public class Bar { public static Bar Create(string description, bool yesNo, float factor) { ... } } 

以下是我想要替换的电话

 public void CreateSomeObjects() { var foo = Foo.Create(123, "foo"); var bar = Bar.Create("bar", true, 1.23); } 

 public void CreateSomeObjects() { var foo = Foo.Create(count: 123, name: "foo"); var bar = Bar.Create(description: "bar", yesNo: true, factor: 1.23); } 

我使用Visual Studio Premium 2013和Resharper。 任何想法如何实现这一目标? (我只需要一个提示,没有完整的解决方案。)

不确定这是多么实用,但您可以使用ReSharper执行以下操作:

  1. 使用“查找用法”获取所有方法调用位置的列表。
  2. 对于每种用法,双击以转到该方法。
  3. 然后在代码编辑器中,单击参数值,ReSharper应显示其动作指示器(左边距中的灯泡或锤子)。
  4. 单击操作指示器以显示操作上下文菜单。
  5. 选择“添加参数名称”操作以将参数名称添加到所有参数。
  6. 重复。