项目专属Omnisharp格式化失效问题求助
问题:VSCode中Omnisharp格式化规则不生效,项目级omnisharp.json配置无作用
我正在使用VSCode并已安装官方Microsoft C#扩展,但无法修改Omnisharp的格式化规则。我在项目根目录(.sln文件旁)放置了omnisharp.json文件,但对该文件的修改均未影响VSCode中的格式化效果,原本认为项目专属的omnisharp文件会覆盖本地其他配置。
额外信息
- Omnisharp输出窗口显示了社区相关问题的评论消息
- Omnisharp输出窗口还出现警告:
warn: OmniSharp.Roslyn.CSharp.Services.Navigation.FindUsagesService
No symbol found. File: file\path\here.cs, Line: 51, Column: 16. - JSON中已将
EnableEditorConfigSupport设为false,且VSCode设置中已取消勾选该选项 - 我通过大幅修改omnisharp.json的多项设置,使用VSCode的
OmniSharp: Restart OmniSharp命令重启Omnisharp,再格式化文件来验证解决方案是否生效 - 使用官方Omnisharp配置示例
- 未安装EditorConfig扩展
已尝试的排查步骤与参考资料
- 《C# code formatting settings in VS Code and OmniSharp》相关文章
- Omnisharp-vscode仓库的issue #5446
- Omnisharp-roslyn官方文档的配置选项说明
- 《The Real Ultimate Guide to Fixing OmniSharp in VS Code》相关文章
- Stack Overflow问题:Setting C# formatting options for OmniSharp on Visual Studio Code?
- Stack Overflow问题:Not able to get full Intellisense in Visual Studio Code with Unity functions
- Stack Overflow问题:VSCode format curly brackets on the same line c#
- Stack Overflow问题:Omnisharp not loading properly - Visual Studio Code and Unity
未解决的尝试
- 在解决方案目录、%APPDATA%/Code/User目录、%userprofile%/.omnisharp目录及%userprofile%/.vscode/extensions/ms-dotnettools.csharp-1.25.7-win32-x64/.omnisharp/1.39.6-net6.0目录中创建omnisharp.json文件
- 在所有omnisharp.json和settings.json文件中设置
EnableEditorConfigSupport为false - 完全卸载VSCode(删除所有用户设置),重新安装最新版VSCode和.NET,再重试上述步骤
- 将Unity的VSCode Editor Package改为1.2.3版本
- 创建config.json文件并使用Omnisharp-server的官方配置示例
- 安装Mono
- 安装MSBuildTools
- 在项目、用户及Code目录的settings.json文件中设置
omnisharp.UseModernNet为false - 安装.NET 6
我已花费数小时排查但仍未解决问题,恳请帮助找出原因,如需更多信息可随时提供。
内容的提问来源于stack exchange,提问作者Stochastis
相关产品推荐
相关产品推荐

