【发布时间】:2018-01-30 17:38:45
【问题描述】:
我意识到我不能使用ctrl + . 快捷方式来导入其他C# 类。此快捷方式适用于 typescript 等其他文件类型。
我已卸载并重新安装。我也安装了旧版本的 VS 代码。但没有任何效果。
如上所示,当我执行ctrl + . 时,没有显示导入功能。这些只是我得到的选择。没有它也可以使用,但是手动输入这些文件也很烦人。
【问题讨论】:
标签: c# visual-studio-code omnisharp
我意识到我不能使用ctrl + . 快捷方式来导入其他C# 类。此快捷方式适用于 typescript 等其他文件类型。
我已卸载并重新安装。我也安装了旧版本的 VS 代码。但没有任何效果。
如上所示,当我执行ctrl + . 时,没有显示导入功能。这些只是我得到的选择。没有它也可以使用,但是手动输入这些文件也很烦人。
【问题讨论】:
标签: c# visual-studio-code omnisharp
VS Code 中的 C# 语言功能由名为 OmniSharp 的服务提供。
您可以尝试几件事:
Enabling C# debugger logging 在 Omnisharp 中
"configurations": [
{
"...": "...",
"logging": {
"engineLogging": true
}
},
{ "...": "..." }
]
【讨论】:
[fail] 消息:OmniSharp.Roslyn.CSharp.Services.Refactoring.V2.GetCodeActionsService Error registering code fixes for Microsoft.CodeAnalysis.CSharp.AddImport.CSharpAddImportCodeFixProvider
OmniSharp 错误日志将我带到那里。
我也遇到过类似的情况。就我而言,我有几个 .csproj 文件和一个解决方案文件。确保将所有 .csproj 文件添加到 .sln 文件。
dotnet sln add <.csproj file path>.
确保重新启动omnisharp。 在 Mac 中 -> (command + shift + p => 选择 Omnisharp: Restart OmniSharp)
【讨论】:
在我的情况下解决它的方法是,在 Unity 中,将 Edit -> Project Settings -> Player -> Other Settings -> Api Compatibility Level 设置为 .NET 4.x。
在某些情况下可能不合适,并且表明我的 Omnisharp/VS Code 设置中的另一个问题,但以防万一它对某人有所帮助。
【讨论】:
您是否尝试过清除 Visual Studio 缓存?在尝试此操作之前,请确保 Visual Studio 已关闭。它通常位于:C:\Users\Your User Name\AppData\Local\Microsoft\VisualStudio\
此缓存很容易损坏,并且在重新安装之间通常不会被清除。
另外,如果以前不起作用,请尝试清除临时目录 - C:\Users\Your user name\AppData\Local\Temp
要检查的更多内容
检查工具->选项->环境->键盘中的键盘布局设置是否设置为Visual C# 2005
检查工具 -> 选项 -> 文本编辑器 -> C# -> 格式中的 IntelliSense 设置,以查看可能导致默认值更改的任何内容
希望这会有所帮助!
【讨论】:
14.0, 15.0, 15.0_.., Packages, SettingsLogs, vshub。似乎这些是 Visual Studio 文件夹而不是 Visual Studio Code。