Error in Visual Studio Code Dotnet Core C#: "The type or namespace name 'System' could not be found", but build succeeds

MStudley picture MStudley · Jan 23, 2017 · Viewed 32.9k times · Source

When trying to work with Visual Studio Code on a C# DotNet Core MVC application, I am having a lot of trouble getting visual studio code to work. It is having trouble finding anything related to C#, marking even 'Using System;' as invalid, saying it can't find it.

However, when I run a Dotnet build, it succeeds with no warnings or errors and the project runs.

My project.json:

 {
  "version": "1.0.0-*",
  "buildOptions": {
    "debugType": "portable",
    "emitEntryPoint": true
  },
  "dependencies": {
    "Microsoft.NETCore.App": {
      "version": "1.1.0",
      "type": "platform"
    },
    "Microsoft.EntityFrameworkCore.Sqlite": "1.1.0",
    "Microsoft.EntityFrameworkCore.Design": {
      "version": "1.1.0",
      "type": "build"
    },
    "Microsoft.AspNetCore.Mvc": "1.1.0",
    "Microsoft.AspNetCore.Server.IISIntegration": "1.1.0",
    "Microsoft.AspNetCore.Server.Kestrel": "1.1.0",
    "Microsoft.Extensions.Configuration.EnvironmentVariables": "1.1.0",
    "Microsoft.Extensions.Configuration.FileExtensions": "1.1.0",
    "Microsoft.Extensions.Configuration.Json": "1.1.0",
    "Microsoft.Extensions.Logging": "1.1.0",
    "Microsoft.Extensions.Logging.Console": "1.1.0",
    "Microsoft.Extensions.Logging.Debug": "1.1.0",
    "Microsoft.Extensions.Options.ConfigurationExtensions": "1.1.0",
    "Microsoft.AspNetCore.StaticFiles": "1.1.0"
  },

  "frameworks": {
    "netcoreapp1.1": {
      "dependencies": {
        "Microsoft.NETCore.App": {
          "type": "platform",
          "version": "1.1.0"
        }
      },
      "imports": "dnxcore50"
    }
  }
}

Any ideas? I'm really pulling my hair out with this one.

Answer

Shaun Luttin picture Shaun Luttin · Jan 23, 2017

Sometimes C# for Visual Studio Code (powered by OmniSharp) becomes confused.

Try restarting OmniSharp. Here are two ways:

  1. Close and re-open Visual Studio Code, or
  2. Open the Command Pallet and type Restart Omnisharp.

OmniSharp tends to become confused if we restore dependencies from the command line instead of from within Visual Studio Code.