代码语法样式:命名/位置参数
如果您希望对特定类型的参数使用 命名参数 ,JetBrains Rider 可以帮助您强制执行此实践。
请考虑以下方法调用:
当您阅读此代码时,您必须停下来研究方法签名以了解发生了什么(您可以通过 参数信息工具提示 或 导航到方法声明 来完成此操作)。 使用命名参数,相同的调用变得更加清晰:
如果您更喜欢对特定类型使用命名参数,您可以借助 JetBrains Rider 强制执行此偏好。
JetBrains Rider 帮助您在现有代码中排列参数,并在使用 代码补全和 代码生成功能生成新代码时考虑您的偏好,应用 代码模板并执行 重构。
应用参数的样式偏好
默认情况下,JetBrains Rider 建议在所有地方使用位置参数,您必须 明确指定哪些类型的参数需要命名参数。 根据您的偏好,JetBrains Rider 高亮显示需要名称的定位参数或应为定位的命名参数,然后建议相应的 快速修复或 范围内修复:

即使您对参数没有任何样式偏好,您也可以随时按 Alt+Enter ,在任何命名或位置参数上选择添加或移除参数名称,并使用相应的 上下文操作:

另一种以批量模式强制执行命名/位置参数偏好的选项是 代码清理。 您可以使用内置的配置文件之一 运行代码清理 ,例如 完全清理或 重新格式化并应用语法样式 ,或者创建并运行 仅针对特定任务的自定义配置文件 ,如下所述。
使用自定义代码清理配置文件应用参数样式
按下 Ctrl+Alt+S 或从菜单中选择 (Windows 和 Linux)或 (macOS)。
转到代码清理配置文件设置页面: 。
按照 创建新的自定义清理配置文件 部分中描述的步骤创建一个新配置文件。 在新配置文件的 选定的配置文件设置 部分中,勾选 应用参数样式 复选框。 您还可以选择在此配置文件中启用其他代码清理任务。
在 设置 对话框中点击 保存 以应用修改,并让 JetBrains Rider 选择保存位置,或者通过从 保存 选择器中选择特定设置层来保存修改。 如需了解更多信息,请参见 基于层的设置。
选择您希望强制执行偏好的范围:
将光标放置在文件中的任意位置,以对文件强制执行您的偏好设置。
在 解决方案资源管理器 中选择一个或多个项目,以对这些节点及其子项下的文件强制执行您的偏好设置。
按 Ctrl+R, C 或从主菜单中选择 。
在打开的 重新格式化并清理代码 对话框中,选择新创建的配置文件,并根据需要选择另一个范围。 在打开的 重新格式化并清理代码 对话框中,选择新建的配置文件,并在需要时选择其他作用域。
点击 确定。 JetBrains Rider 将在选定范围内强制执行您的偏好设置。
如果您希望在不打开 重新格式化并清理代码 对话框选择配置文件的情况下排列参数,您可以将创建的配置文件绑定到 静默清理 ,并通过按 Ctrl+R, G 运行它。 您还可以创建一个 自定义清理配置文件 ,将排列参数与其他代码样式任务结合起来。
要将命名/位置参数的偏好与所有其他 格式化和 语法样式规则一起应用于选定的代码块, Alt+Enter 并选择 。
您可以排列最近修改并准备提交到 Git 的代码中的参数。 JetBrains Rider 将在提交之前运行选定的 清理配置文件。
在提交到 Git 之前清理代码
按 Ctrl+K 或从主菜单中选择 。
在 提交 工具窗口中,点击
,并在 提交检查 区域中,选择 清理方式... 复选框。
点击 选择配置文件 并选择您的自定义 Code Cleanup 配置文件。
点击 提交 或 提交并推送。 JetBrains Rider 将在提交暂存的文件中运行代码清理,然后提交更改。
您可以在每次保存文件更改时排列参数,以确保您的编辑始终符合您的代码样式。 请注意,这仅在您通过 Ctrl+S 或 Ctrl+S 显式保存更改时发生,不会因 自动保存 而触发。 然而,所有自动保存的文件都会被放入“重新格式化和清理”队列,并将在下次显式保存时处理。
在保存更改时自动排列参数
按下 Ctrl+Alt+S 打开设置,然后选择 。
选择 重新格式化并清理代码 ,选择您的自定义 Code Cleanup 配置文件,并决定是将其应用于整个文件还是仅应用于更改的行。
下次您完成编辑并保存文件或所有文件时,JetBrains Rider 将使用选定的配置文件清理受影响的文件。
配置命名/位置参数的偏好
您的参数样式偏好是通过 基于层的设置机制保存的。 此外,该机制允许您为不同的解决方案维护不同的偏好,并将这些偏好保存在 VCS 中,自动与团队成员共享。
配置参数样式的偏好
转到 JetBrains Rider 设置 的 页面 Ctrl+Alt+S ,然后选择 语法样式 选项卡。
在 参数 类别中,选择是否对特定参数类型使用命名或位置参数。 请注意, 字面量值 指的是所有字面量(
bool、int、double等),但不包括字符串。 字符串的偏好是在 字符串字面量值 选择器中定义的。其它 类别适用于所有其他表达式类型,例如条件、空合并、二元、调用或
typeof表达式。在 设置 对话框中点击 保存 以应用修改,并让 JetBrains Rider 选择保存位置,或者通过从 保存 选择器中选择特定设置层来保存修改。 如需了解更多信息,请参见 基于层的设置。