ReSharper 2025.3 Help

内联参数重构

此重构允许您将方法参数替换为方法调用中的参数值。 如果有多个调用,您可以选择从哪个调用中获取参数。

一个简单的案例。 内联参数 pi 的常量值:

private double AreaOfCircle(double rad, double pi) { return pi*rad*rad; } public void Test() { var area = AreaOfCircle(10, Math.PI); }
private double AreaOfCircle(double rad) { return Math.PI*rad*rad; } public void Test() { var area = AreaOfCircle(10); }

如果您希望内联的参数依赖于其他变量和/或计算,ReSharper 可以用其他参数替换原始参数,并将计算移到目标方法内部。

在以下示例中,针对 action 参数和 PerformAction 方法应用重构操作,将此前作为调用参数使用的整个 lambda 表达式移动到方法体中,并创建两个新参数以传递所需的值。

private void PerformAction(Action action) { action(); } private void Test(string key, string value) { PerformAction(() => Console.WriteLine("{0} : {1}", key, value)); }
private void PerformAction(string arg0, string value) { ((Action) (() => Console.WriteLine("{0} : {1}", arg0, value)))(); } private void Test(string key, string value) { PerformAction(key, value); }

内联一个参数

  1. 将光标放在方法声明中的参数或方法调用中的参数上。

  2. 执行以下操作之一:

    • Control+Alt+N ,然后选择 内联参数

    • 按下 Control+Shift+R 然后选择 内联参数

    • 右键单击并从上下文菜单中选择 重构 | 内联参数

    • 从主菜单中选择 ReSharper | 重构 | 内联 | 内联…

    将打开 内联参数 对话框。

  3. 如果方法有多个用法,请选择您希望内联参数的用法并单击 下一步

  4. 选择您希望内联的参数。

  5. 如果内联参数依赖于其他变量,ReSharper 会在 新参数 字段中建议一个或多个来自调用者的变量。 选择所需的参数。

  6. 检查新签名的预览并单击 下一步

  7. 如果未发现冲突,ReSharper 会立即执行重构。 否则,它会提示您 解决冲突

此功能在以下语言和技术中是 支持的

语言:C#

语言:VB.NET

语言:C++

语言:ASP.NET

语言:Razor

语言:XAML

语言:Resx

语言:构建脚本

语言:SQL

功能在 C# 中可用

此功能适用于 Visual Basic

功能在 C++ 中不可用

功能在 ASP.NET 中不可用

功能在 Razor 中不可用

功能在 XAML 中不可用

此功能不适用于资源文件

此功能不适用于构建脚本文件

功能在 SQL/NoSQL 文件和注入中不可用

此处提供的说明和示例介绍了在 C# 中使用该功能。 有关其他语言的更多信息,请参阅 语言和框架 部分中的相关主题。

最后修改日期: 2025年 12月 8日