Visual Studio部分语法出现缩进错误的原因是什么?
解决Visual Studio 2022中LINQ链式调用的缩进问题
在使用Microsoft Visual Studio Community 2022(64位,版本17.11.5)时,LINQ链式调用中的.Select和.ToList出现向左缩进错误,示例代码如下:
// Extract task details from the JSON output var tasks = JsonConvert.DeserializeObject<List<Task>>(jsonOutput); // Filter tasks with empty items var emptyTasks = tasks.Where(task => task.Items.Length == 0) .Select(task => new TaskWithArea(task, area.Name)) .ToList(); // Create the Graphviz graph and save as SVG CreateGraph(tasks, $"{area.Name}.svg");
以下是几种可行的解决方法:
- 重置并检查格式化设置
- 打开「工具」→「选项」→「文本编辑器」→「C#」→「代码样式」→「格式化」→「换行」。
- 确认「在链式调用的每个成员前换行」选项已勾选。
- 若设置正常仍有问题,点击「重置所有设置」恢复默认规则,再用快捷键
Ctrl+K, Ctrl+D重新格式化代码。
- 添加自定义.editorconfig配置
在项目根目录创建.editorconfig文件,写入以下规则强制LINQ链式调用的缩进格式:[*.cs] csharp_new_line_between_query_expression_clauses = true csharp_indent_style = block csharp_indent_size = 4 - 排查扩展干扰
禁用近期安装的代码格式化类扩展(如Resharper、CodeMaid),重启Visual Studio后测试格式化是否恢复正常,确认是否是扩展冲突导致的缩进异常。
内容的提问来源于stack exchange,提问作者Juan Carlos Oropeza
相关产品推荐
相关产品推荐

