59

I started to develop Asp.net Core web API with the VS code. But when I typing the code Intellisense/Suggestions not working properly. I saw in some resource on the internet while they are typing using Microsoft., EntityFrameworkCore showing as a suggestion. But In my case, it's not showing. In the OmniSharp log showing following error to me.

Starting OmniSharp server at 4/5/2019, 3:37:16 PM
    Target: c:\Dotnet Core\NgWebApi

OmniSharp server started.
    Path: C:\Users\Acer\.vscode\extensions\ms-vscode.csharp-1.18.0\.omnisharp\1.32.11\OmniSharp.exe
    PID: 13684

[info]: OmniSharp.Stdio.Host
        Starting OmniSharp on Windows 6.2.9200.0 (x64)
[info]: OmniSharp.Services.DotNetCliService
        DotNetPath set to dotnet
[info]: OmniSharp.MSBuild.Discovery.MSBuildLocator
        Located 1 MSBuild instance(s)
            1: StandAlone 15.0 - "C:\Users\Acer\.vscode\extensions\ms-vscode.csharp-1.18.0\.omnisharp\1.32.11\msbuild\15.0\Bin"
[info]: OmniSharp.MSBuild.Discovery.MSBuildLocator
        MSBUILD_EXE_PATH environment variable set to 'C:\Users\Acer\.vscode\extensions\ms-vscode.csharp-1.18.0\.omnisharp\1.32.11\msbuild\15.0\Bin\MSBuild.exe'
[info]: OmniSharp.MSBuild.Discovery.MSBuildLocator
        Registered MSBuild instance: StandAlone 15.0 - "C:\Users\Acer\.vscode\extensions\ms-vscode.csharp-1.18.0\.omnisharp\1.32.11\msbuild\15.0\Bin"
            CscToolExe = csc.exe
            CscToolPath = C:\Users\Acer\.vscode\extensions\ms-vscode.csharp-1.18.0\.omnisharp\1.32.11\msbuild\15.0\Bin\Roslyn
            MSBuildExtensionsPath = C:\Users\Acer\.vscode\extensions\ms-vscode.csharp-1.18.0\.omnisharp\1.32.11\msbuild
            MSBuildToolsPath = C:\Users\Acer\.vscode\extensions\ms-vscode.csharp-1.18.0\.omnisharp\1.32.11\msbuild\15.0\Bin
[info]: OmniSharp.Cake.CakeProjectSystem
        Detecting Cake files in 'c:\Dotnet Core\NgWebApi'.
[info]: OmniSharp.Cake.CakeProjectSystem
        Could not find any Cake files
[info]: OmniSharp.WorkspaceInitializer
        Project system 'OmniSharp.DotNet.DotNetProjectSystem' is disabled in the configuration.
[info]: OmniSharp.MSBuild.ProjectSystem
        No solution files found in 'c:\Dotnet Core\NgWebApi'
[info]: OmniSharp.MSBuild.ProjectManager
        Queue project update for 'c:\Dotnet Core\NgWebApi\NgWebApi.csproj'
[info]: OmniSharp.Script.ScriptProjectSystem
        Detecting CSX files in 'c:\Dotnet Core\NgWebApi'.
[info]: OmniSharp.Script.ScriptProjectSystem
        Could not find any CSX files
[info]: OmniSharp.WorkspaceInitializer
        Invoking Workspace Options Provider: OmniSharp.Roslyn.CSharp.Services.CSharpWorkspaceOptionsProvider
[info]: OmniSharp.MSBuild.ProjectManager
        Loading project: c:\Dotnet Core\NgWebApi\NgWebApi.csproj
[info]: OmniSharp.WorkspaceInitializer
        Configuration finished.
[info]: OmniSharp.Stdio.Host
        Omnisharp server running using Stdio at location 'c:\Dotnet Core\NgWebApi' on host 17188.
[warn]: OmniSharp.MSBuild.ProjectManager
        Failed to load project file 'c:\Dotnet Core\NgWebApi\NgWebApi.csproj'.
c:\Dotnet Core\NgWebApi\NgWebApi.csproj(1,1)
Microsoft.Build.Exceptions.InvalidProjectFileException: The SDK 'Microsoft.NET.Sdk.Web' specified could not be found.  c:\Dotnet Core\NgWebApi\NgWebApi.csproj
   at Microsoft.Build.Shared.ProjectErrorUtilities.ThrowInvalidProject(String errorSubCategoryResourceName, IElementLocation elementLocation, String resourceName, Object[] args)
   at Microsoft.Build.Evaluation.Evaluator`4.ExpandAndLoadImportsFromUnescapedImportExpressionConditioned(String directoryOfImportingFile, ProjectImportElement importElement, List`1& projects, Boolean throwOnFileNotExistsError)
   at Microsoft.Build.Evaluation.Evaluator`4.ExpandAndLoadImports(String directoryOfImportingFile, ProjectImportElement importElement)
   at Microsoft.Build.Evaluation.Evaluator`4.EvaluateImportElement(String directoryOfImportingFile, ProjectImportElement importElement)
   at Microsoft.Build.Evaluation.Evaluator`4.PerformDepthFirstPass(ProjectRootElement currentProjectOrImport)
   at Microsoft.Build.Evaluation.Evaluator`4.Evaluate(ILoggingService loggingService, BuildEventContext buildEventContext)
   at Microsoft.Build.Evaluation.Project.Reevaluate(ILoggingService loggingServiceForEvaluation, ProjectLoadSettings loadSettings)
   at Microsoft.Build.Evaluation.Project.ReevaluateIfNecessary(ILoggingService loggingServiceForEvaluation, ProjectLoadSettings loadSettings)
   at Microsoft.Build.Evaluation.Project.Initialize(IDictionary`2 globalProperties, String toolsVersion, String subToolsetVersion, ProjectLoadSettings loadSettings)
   at Microsoft.Build.Evaluation.Project..ctor(String projectFile, IDictionary`2 globalProperties, String toolsVersion, String subToolsetVersion, ProjectCollection projectCollection, ProjectLoadSettings loadSettings)
   at Microsoft.Build.Evaluation.ProjectCollection.LoadProject(String fileName, IDictionary`2 globalProperties, String toolsVersion)
   at OmniSharp.MSBuild.ProjectLoader.EvaluateProjectFileCore(String filePath)
   at OmniSharp.MSBuild.ProjectLoader.BuildProject(String filePath)
   at OmniSharp.MSBuild.ProjectFile.ProjectFileInfo.Load(String filePath, ProjectLoader loader)
   at OmniSharp.MSBuild.ProjectManager.LoadOrReloadProject(String projectFilePath, Func`1 loader)

[fail]: OmniSharp.MSBuild.ProjectManager
        Attempted to update project that is not loaded: c:\Dotnet Core\NgWebApi\NgWebApi.csproj

I re-installed the VS Code and C# , C# Extention to solve this problem, but it's still occurring. I think the reason was to not showing Intellisense/Suggestions the project is not properly loaded. Can anyone tell me how to avoid this error and how to solve Intellisense/Suggestions not showing the issue.

Sachith Wickramaarachchi
  • 5,546
  • 6
  • 39
  • 68

18 Answers18

118

Solved (cross checked on Ubuntu 16.04 and CentOS 7):

In the VS Code menu, go into File / Preferences / Settings.

In the "Search settings" window, type omnisharp.path

Click on "Edit in settings.json" link.

Add (or edit) like this: "omnisharp.path": "latest"

(from: https://github.com/OmniSharp/omnisharp-vscode/issues/2965)

BernieB
  • 1,181
  • 1
  • 5
  • 2
  • 2
    This solution worked for me: Win 10, VSCode: 1.32.3 and .Net Core 2.2.301 – AMouat Jul 16 '19 at 15:48
  • 4
    Mac OS X 10.15 running VS Code 1.40.2 My settings.json did not have this entry. As soon as I added it omnisharp reinstalled itself and voila intellisense is back. Thanks @BernieB – Rod Hartzell Dec 04 '19 at 21:18
  • 12
    I did this but it did not fix the problem. – Stormblessed Jul 05 '20 at 00:23
  • I upgraded the dotnet packages on my Ubuntu 20.04 system yesterday. There appears to have been a breaking change which impacted omnisharp. However, the latest version of omnisharp worked fine with the newer dotnet packages. Setting `"omnisharp.path": "latest"` caused VS Code to update omnisharp automatically for me, which resolved the broken intellisense problem. – Chris Betti Aug 14 '20 at 14:01
  • 2
    Fixed the intellisense but did not fix the "OmniSharp.MSBuild.ProjectManager Attempted to update project that is not loaded" error. See below answer on setting Omnisharp Use Global Mono to "always". – IdahoB Jan 27 '21 at 23:58
  • I was using linux and had to set `"omnisharp.useModernNet": true` – Art Apr 21 '22 at 04:32
  • On MacOS I also had to go into the C# extensions and set omnisharp.useModernNet to false (in addition to setting omnisharp.path to latest in the main vscode settings) – ken Mar 12 '23 at 15:12
  • Changing "omnisharp.path": "latest" worked for me. – Michael May 27 '23 at 20:21
67

I solved this issue by doing the following on VSCode:

  1. Go to settings. (Code -> Preferences -> Settings on Mac)
  2. Search "omnisharp".
  3. Find the section "Omnisharp: Use Global Mono," and set it to "always."
  4. Find the section "Omnisharp: Path," and click "Edit in settings.json." Change "omnisharp.path" as "omnisharp.path": latest".
  5. Reload the window.
ege
  • 812
  • 6
  • 16
  • 1
    You saved my day. I was looking for a solution from a month. – The Destroyer Oct 01 '20 at 11:24
  • 1
    This pointed me to the right direction, but I had to set it to "never". I think because I have both core 3.1 and core 5 installed. It looks like I needed the local Mono, not the global one. – RailinginDFW 1 hour ago – RailinginDFW Oct 26 '20 at 20:52
  • 3
    I had to do both things before it worked: 1. from the answer above, change settings to `"omnisharp.path": "latest"` and it downloaded OmniSharp into my copy of VSCode. Then 2. `Use global mono: always` like you suggested. It was a group effort. Thanks! – M - Nov 25 '20 at 02:05
  • 2
    I did as @Marquizzo described and I have both core 3.1 and core 5 loaded. – ewilan Dec 29 '20 at 22:10
  • I edited the answer based on your suggestion @Marquizzo . I think it's more robust with the "omnisharp.path": "latest", as the problem sometimes reoccurred without it. – ege Dec 30 '20 at 19:58
  • This completely worked! Thank you so much! – danner.tech Aug 01 '21 at 18:04
  • 2
    Use Global Mono setting does not exist for me. – Drazen Bjelovuk Jul 25 '22 at 19:03
16

I found another solution since none of the other solutions were working for me and i was searching for hours.(07/08/2021):

I got the same error with .NET, .NET Core or .NET Framework, here are some screenshots of the errors:

Error popup

Error output

In the error output, it says to install the Developer Pack for this framework version. You can find the version in the .csproj file:

enter image description here

By installing the .NET Framework of this version on the dotnet microsoft site: .NET Framework download list i fixed the error after reloading VSCode and got my Intellisense working for Unity.

TLDR: My fix was too install .NET Framework version 4.7.1

6

To solve this I did several things. First of all, I downgrade OmniSharp version by installing their beta version. download the .vsix file for that release to my machine. Used the following steps to install the .vsix into Visual Studio Code.

  1. Open Visual Studio Code and select View->Extensions from the menu to display the Extensions pane
  2. By clicking the ... at the top-right corner of the Extensions pane and select "Install from VSIX..." on the menu.
  3. Located the .vsix the file I downloaded and Opened it
  4. Then restart vs code

But the problem still occurred, so then I downgraded the .Net core SDK v2.2.202 version to 2.1.202 and the problem is solved.

Updated: Had to face the same issue again after reinstalling VS Code, resolve by.

  1. In the visual studio code menu, go into File > Preferences > Settings. or Press Ctrl+++,

  2. In the Search Setting field, Type omnisharp.path

  3. Click on Edit in settings.json.

in there Add / Edit like this,

{
  "omnisharp.path": "latest"
}

If your settings.json already had entries in it, put a comma behind the last one and add the line like this:

{
  "workbench.colorTheme": "Solarized Light",
  "omnisharp.path": "latest"
}

Finally, save the settings.json

You'll see a prompt: "OmniSharp configuration has changed. Would you like to relaunch the OmniSharp server with your changes?" Click the "Restart OmniSharp" button to reload it.

In the Output window, you can see updates while the latest version downloads

Sachith Wickramaarachchi
  • 5,546
  • 6
  • 39
  • 68
6

For the recent version of Omnisharp just uncheck the useModernNet in VS code C# extension setting as shown in the screenshot.enter image description here

Abdessamad Doughri
  • 1,324
  • 2
  • 16
  • 29
3

I solved this by upgrading my Mono project version https://www.mono-project.com/

Assaf S.
  • 4,676
  • 2
  • 22
  • 18
  • This worked and actually was recommended by the Unity for Visual Studio Code guide. – htafoya Jul 31 '20 at 03:44
  • Note that if you have Visual Studio for Mac installed and auto updates enabled, it will download a version of the Mono MDK that is greater than the version specified on the Mono website for the "Visual Studio Channel". That aside, the key to making it work in my situation was to uninstall/reinstall the "C#" extension and then follow the [solution](https://stackoverflow.com/a/63603883/64240) by **ege** to set the VS Code setting "Omnisharp: Use Global Mono" to "always". Now both of these IDEs work as expected. – Neil Monroe Nov 16 '20 at 16:14
  • Extra note: Go to settings and disable to "omnisharp.useModernNet". – erim kurt Nov 13 '22 at 06:29
2

If you are running on an older .NET project (<.NET 6), setting useModernNet to false will allow OmniSharp to target the right .NET framework version.

In settings.json:

"omnisharp.useModernNet": false

Alternatively, this can be done through VS Code's settings pane: File>Preferences>Settings and search for omnisharp.useModernNet and untick the checkbox for Omnisharp: Use Modern Net.

Shumayl
  • 3
  • 3
waavey
  • 31
  • 3
  • I just tried this and worked for me (VS Code 1.74.3 and Unity 2021.3.8f1 in Mac). When you set the value to `false`, then restart VSC – franco Jan 23 '23 at 20:58
1

Solved: Check if Visual Studio Build Packages is installed, if so uninstall it. As soon as uninstall VScode will work fine and intellisense feature will be back. Good luck!

Hunter8
  • 111
  • 3
  • Verified for Visual Studio Code 1.40.2 (User Setup), .NET Core 3.1 Console App, and Windows 10 Pro 1803 – x__x Dec 08 '19 at 07:57
1

I was also facing the same issue. If none of the above solutions worked then you can try the one below.

While going through the logs, I realized the real problem: "The SDK 'Microsoft.NET.Sdk' specified could not be found."

I installed latest stable Mono from here (6.8.0): https://www.mono-project.com/download/stable/

Then opened ~bash_profile and exported framework path of mono: export FrameworkPathOverride=/Library/Frameworks/Mono.framework/Versions/Current

Works fine for me. Hope it works for you too.

1

This started happening after the latest Windows10 update.

Re-installed .NET Core Runtime and everything's fine now.

1

In My case, I deleted the obj folder in Visual Studio code. Closed & reopened Visual Studio Code and rebuild the project. It worked after that.

Hemendr
  • 673
  • 6
  • 12
0

I've had both VSCode and Visual Studio installed on my mac. Uninstalling Visual Studio with this official guide solved the issue.

Ilyas Assainov
  • 1,901
  • 13
  • 15
0

Another reason this might fail, is when you have Visual Studio 2019 16.7 or below installed, as OmniSharp reqiures MsBuild from 16.8.

Updating Visual Studio using the Visual Studio installer resolved that issue for me, while I was using a replacement machine, that lay dormant for a while now.

Marco
  • 22,856
  • 9
  • 75
  • 124
0

If you installed the SDKusing snap / ubuntu software.. that is what caused the same error for me. I answered my own similar question here

vicNeo
  • 132
  • 10
0

Actually the omnisharp path doesn't work for me. I'm on mac. What i did eventually is to download an early version of .net, not the latest 5.

https://dotnet.microsoft.com/download/dotnet/thank-you/sdk-3.0.103-macos-x64-installer

windmaomao
  • 7,120
  • 2
  • 32
  • 36
0

In my case creating C:\Program Files (x86)\Microsoft Visual Studio\Shared\NuGetPackages folder solved the problem

Namig Hajiyev
  • 1,117
  • 15
  • 16
0

In my particular case, I was able to solve the Attempted to update project that is not loaded: problem by running dotnet restore across my solution.
It seems I was missing my dependencies.

Oisín Foley
  • 2,317
  • 2
  • 22
  • 29
0

In my case I hade package version conflicts between the projects which are added to the solution. Resolving the conflict and rebuild the project solved the issue.

PeterPazmandi
  • 533
  • 10
  • 13