【发布时间】:2020-11-16 05:05:00
【问题描述】:
我刚刚开始使用 C#(以及一般的编码),遵循 YouTube 上的一个非常基本的设置教程。我正在尝试运行通过单击 Terminal>New Terminal:
生成的简单代码using System;
namespace Program1
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("Hello World!");
}
}
}
据我了解,这应该可以立即运行(对于教程讲师来说,它运行得非常好)。
我还遇到以下问题 (CS0579)(感谢评论现已解决):
重复的'global::System.Runtime.Versioning.TargetFrameworkAttribute'
有这个问题的文件是这样的:
using System;
using System.Reflection;
[assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETCoreApp,Version=v3.1", FrameworkDisplayName = "")]
launch.json 文件未从自动生成的文件中更改:
"version": "0.2.0",
"configurations": [
{
"name": ".NET Core Launch (console)",
"type": "coreclr",
"request": "launch",
"preLaunchTask": "build",
// If you have changed target frameworks, make sure to update the program path.
"program": "${workspaceFolder}/bin/Debug/netcoreapp3.1/Program1.dll",
"args": [],
"cwd": "${workspaceFolder}",
// For more information about the 'console' field, see https://aka.ms/VSCode-CS-LaunchJson-Console
"console": "internalConsole",
"stopAtEntry": false
},
{
"name": ".NET Core Attach",
"type": "coreclr",
"request": "attach",
"processId": "${command:pickProcess}"
}
]
}
我正在运行 VSCode 1.47.2 和 .NET Core SDK 3.1.302
【问题讨论】:
-
您不应该像那样手动定义该属性。如果你有它在一个文件中,你应该删除该行。 SDK自动添加它,因此重复
-
感谢您的评论,就像我说我对这些东西完全陌生。我没有添加任何代码(以上都是自动生成的代码)。你是说我应该删除 [assembly: global::.... 吗?
-
是的,删除它。它不会影响您的启动时间,只是错误
-
您使用的是哪个启动配置。如果您使用的是附加,那么是的,在您选择要附加的进程ID之前需要很长时间,然后它必须实际附加到它。如果是启动请求,那么你的罪魁祸首很可能在你的构建 preLaunchTask
-
谢谢 - 这正是问题所在!
标签: c# visual-studio-code build