2

我安装了 .NET core 3.0 SDK 并使用 .NET 创建了一个控制台应用程序dotnet new console。这是项目文件。

<Project Sdk="Microsoft.NET.Sdk">
  <PropertyGroup>
    <OutputType>Exe</OutputType>
    <TargetFramework>netcoreapp3.0</TargetFramework>
  </PropertyGroup>
</Project>

该应用程序成功运行dotnet run。当我在 Visual Studio Code 中打开它时,包括Programvoidstring在内的所有类型Console都带有下划线,表示错误。错误总是一样的。此示例显示string错误

Predefined type 'System.String' is not defined or imported (CS0518) [myproject]

我试过了:

  • dotnet cleandotnet restore/dotnet build
  • 手动删除bin,obj.vscode恢复
  • 从 vscode 本身恢复
  • 安装了最新版本的 C# 扩展和 VS Code

请注意,.netcoreapp2.2应用程序可以正常打开。

以下是一些环境信息:

$ code --version
1.38.1
b37e54c98e1a74ba89e03073e5a3761284e3ffb0
x64
$ dotnet --info
.NET Core SDK (reflecting any global.json):
 Version:   3.0.100
 Commit:    04339c3a26

Runtime Environment:
 OS Name:     ubuntu
 OS Version:  19.04
 OS Platform: Linux
 RID:         ubuntu.19.04-x64
 Base Path:   /usr/share/dotnet/sdk/3.0.100/

Host (useful for support):
  Version: 3.0.0
  Commit:  95a0a61858

.NET Core SDKs installed:
  2.2.402 [/usr/share/dotnet/sdk]
  3.0.100 [/usr/share/dotnet/sdk]

.NET Core runtimes installed:
  Microsoft.AspNetCore.All 2.2.7 [/usr/share/dotnet/shared/Microsoft.AspNetCore.All]
  Microsoft.AspNetCore.App 2.2.7 [/usr/share/dotnet/shared/Microsoft.AspNetCore.App]
  Microsoft.AspNetCore.App 3.0.0 [/usr/share/dotnet/shared/Microsoft.AspNetCore.App]
  Microsoft.NETCore.App 2.2.7 [/usr/share/dotnet/shared/Microsoft.NETCore.App]
  Microsoft.NETCore.App 3.0.0 [/usr/share/dotnet/shared/Microsoft.NETCore.App]

To install additional .NET Core runtimes or SDKs:
  https://aka.ms/dotnet-download
# lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 19.04
Release:        19.04
Codename:       disco
4

2 回答 2

1

我已经放弃了所有其他 dotnet SDK,只剩下 3.0.100 可用。那成功了。

Linux Mint,最新的 VSCode。

于 2019-10-01T18:20:08.970 回答
0

更新:

即使在删除 mono-devel 及其依赖项之后,问题似乎在 VS Code 1.39.0 中也得到了解决

原来的:

显然,这是一个 C# 扩展问题。由于C# 扩展仅针对 netcoreapp3.0 GA #3289问题评论建议失败,因此安装Mono 6.0.0(在 linux 或 Mac 上)修复了该问题。我可以确认。

从这里安装 Mono 6 或为 Ubuntu 18.04 及更高版本运行以下命令:

sudo apt install gnupg ca-certificates
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF
echo "deb https://download.mono-project.com/repo/ubuntu stable-bionic main" | sudo tee /etc/apt/sources.list.d/mono-official-stable.list
sudo apt update
sudo apt install mono-devel
于 2019-10-01T08:20:59.217 回答