0

我想知道是否有人知道可以自动填充传递给方法的参数的 Visual Studio 扩展。例如,给定以下代码,

private void Display(string firstName, string lastName, long phoneNumber)
{
    ...
}

public void Example(long phoneNumber)
{
    string firstName = "John";
    string lastName = "Doe";

    Display()    
}

当您键入时,Display您可以右键单击它,然后选择自动填充,它会检查任何具有相同确切名称的局部变量,并自动为您完成方法调用:

所以Display()Display(firstName, lastName, phoneNumber);自动转换为?

4

1 回答 1

0

这是您可能最接近的(无论如何都没有创建自己的),但是有一个 catch

假设您的Display方法不存在,并且它的代码在Example方法内部,如下所示:

public void Example(long phoneNumber)
{
    string firstName = "John";
    string lastName = "Doe";

    //Dummy code to be inside display
    lastName += "pey";
    firstName += "ny";
}

现在,突出显示要进入该Display方法的所有内容,右键单击,选择Refactor,然后点击Extract Method。这样做会为您提供一个对话框,Visual Studio 将在其中自动识别构建方法签名所需的参数。只需添加方法名称Display,单击对话框上的确定,。您的新方法已就位,并已替换为对新方法的调用。所以你最终会得到:

public void Example(long phoneNumber)
{
    string firstName = "John";
    string lastName = "Doe";

    Display(firstName, lastName);
}

public void Display(string firstName, string lastName)
{
    //Dummy code to be inside display
    lastName += "pey";
    firstName += "ny";
}
于 2013-03-20T16:16:45.507 回答