提取方法重构
此重构允许您基于选定的代码片段创建一个新方法或一个 局部函数。 JetBrains Rider 会分析选定的语句,并检测可以转换为方法参数或表示其返回值的变量。
请参考以下示例。 方法 PrintReversed() 实际上执行了两件事:它反转字符串并打印它。 我们可以选择反转逻辑,即除 Console.WriteLine(reversed); 之外的所有语句,并使用此重构将该逻辑移动到一个新的 PrintReversed() 方法中。
从选定的语句中提取一个方法
在编辑器中,选择您希望转换为局部函数的一条或多条语句。
请执行以下操作之一:
按下 Ctrl+Alt+M。
按 Alt+Enter 并选择 提取方法。
按 Ctrl+Alt+Shift+T 然后选择 提取方法。
在打开的弹出窗口中,选择 提取局部函数。
会出现一个对话框,您可以在其中配置提取的局部函数:

在 名称 字段中为新局部函数输入一个名称。
在 Return 列表中选择 JetBrains Rider 检测为可能返回值的表达式之一。 可能还有其他被检测为可能返回值的表达式。 它们被列为
出参数。使用 参数 区域中的相应复选框包含或排除参数。 如果您从列表中排除了一个参数,则在必要时会创建具有相同名称和类型的局部变量。
要更改参数的顺序,请在列表中选择一个参数并使用 上移 和 上移 按钮。
选择 设为静态 和/或 设为虚拟 以向方法添加相应的修饰符。
如果需要,请在 可见性 列表中更改方法的可见性。
在 预览 字段中检查生成的局部函数的签名和主体。
要应用重构,请点击 下一步。
如果未发现冲突,JetBrains Rider会立即执行重构。 否则,它会提示您 解决冲突。
从选定的语句中提取局部函数
在编辑器中,选择您希望转换为局部函数的一条或多条语句。
请执行以下操作之一:
按下 Ctrl+Alt+M。
按 Alt+Enter 并选择 提取方法。
按 Ctrl+Alt+Shift+T 然后选择 提取方法。
在打开的弹出窗口中,选择 提取局部函数。
在打开的对话框中,指定在当前方法中放置局部函数的位置,然后单击 下一步。

会出现一个对话框,您可以在其中配置提取的局部函数:

在 名称 字段中为新局部函数输入一个名称。
在 Return 列表中选择 JetBrains Rider 检测为可能返回值的表达式之一。 可能还有其他被检测为可能返回值的表达式。 它们被列为
出参数。使用 参数 区域中的相应复选框包含或排除参数。 如果您从列表中排除了一个参数,则在必要时会创建具有相同名称和类型的局部变量。
要更改参数的顺序,请在列表中选择一个参数并使用 上移 和 上移 按钮。
在 预览 字段中检查生成的局部函数的签名和主体。
要应用重构,请点击 下一步。
如果未发现冲突,JetBrains Rider会立即执行重构。 否则,它会提示您 解决冲突。