VS 2022需调整哪条.editorconfig规则使自动实现属性保持单行
需要调整的.editorconfig规则
在你的.editorconfig文件中针对C#文件添加如下配置,即可让VS 2022始终保留自动实现属性的单行格式,粘贴时不会自动拆分为多行:
[*.cs] # 保留单行代码块格式,不强制拆分单行块为多行 csharp_preserve_single_line_blocks = true # 不在属性声明的开括号前强制换行(如果需要类、方法等其他结构的开括号仍然保持换行,可将下方取值替换为 accessors,anonymous_methods,anonymous_types,control_blocks,events,indexers,lambdas,local_functions,methods,object_collection_array_initializers,types,即从换行列表中移除properties项) csharp_new_line_before_open_brace = none
如果不想手动编辑.editorconfig,也可以直接在VS GUI中修改对应设置:
- 打开「选项 -> 文本编辑器 -> C# -> 代码样式 -> 格式设置 -> 换行」,勾选「保留单行块」
- 打开「选项 -> 文本编辑器 -> C# -> 代码样式 -> 格式设置 -> 新行」,取消勾选「属性、索引器和事件的开括号放置在新行」
自行查找这类配置的有效方法
你之前没找到对应设置,是因为仅查看了「代码样式」的根节点,所有格式化相关的规则都藏在「代码样式」下的「格式设置」子目录中,查找这类配置可以用以下几个方法:
- 逐层展开选项节点:不要停留在配置分类的根节点,展开所有子节点查看,每个配置项被选中时,选项窗口底部的说明区域会直接显示该配置对应的
.editorconfig键名、支持的取值和适用范围,不需要额外检索。 - 用选项窗口的搜索框:在选项窗口顶部的搜索框输入关键词(比如本次问题可以搜「自动属性 换行」「单行块」),会直接过滤出所有匹配的配置项,不用手动逐层翻找。
- 用快速操作跳转:先在编辑器里写出符合你预期格式的代码片段,选中片段后按
Ctrl+.调出快速操作菜单,找到对应「配置格式化规则」「配置代码样式」的条目,点击后可以直接跳转到对应设置项,也可以选择直接把规则生成到项目的.editorconfig文件中。 - 配置导出法:先在GUI里把你想要的代码格式调整到符合预期,点击选项窗口中的「生成.editorconfig文件」按钮,就可以直接导出所有生效的配置规则,不需要手动记键名。
内容的提问来源于stack exchange,提问作者pbristow
相关产品推荐
相关产品推荐

