Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby-on-rails-4/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# CS0246:类型或命名空间名称';系统&x27;找不到_C#_.net Core_Msbuild - Fatal编程技术网

C# CS0246:类型或命名空间名称';系统&x27;找不到

C# CS0246:类型或命名空间名称';系统&x27;找不到,c#,.net-core,msbuild,C#,.net Core,Msbuild,我在Mac上使用带有.NET Core 3.1的dotnet 3.1 CLI学习msbuild并从头创建项目文件。我尝试在上进行演练,但失败,出现以下错误: CS0246: The type or namespace name 'System' could not be found (are you missing a using directive or an assembly reference?) 我做错了什么?如何在项目中引用系统命名空间 program.cs using System

我在Mac上使用带有.NET Core 3.1的dotnet 3.1 CLI学习msbuild并从头创建项目文件。我尝试在上进行演练,但失败,出现以下错误:

CS0246: The type or namespace name 'System' could not be found (are you missing a using directive or an assembly reference?)
我做错了什么?如何在项目中引用系统命名空间

program.cs

using System;

class HelloWorld {

    static void Main() {
#if DebugConfig
        Console.WriteLine("WE ARE IN THE DEBUG CONFIGURATION");
#endif

        Console.WriteLine("Hello, world!");
    }
}
project.csproj

<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
    <ItemGroup>
        <Compile Include="program.cs" />
    </ItemGroup>

    <Target Name="Build">
        <Csc Sources="@(Compile)"/>
    </Target>
</Project>

您的项目文件看起来过时了

<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
    <ItemGroup>
        <Compile Include="program.cs" />
    </ItemGroup>

    <Target Name="Build">
        <Csc Sources="@(Compile)"/>
    </Target>
</Project>

对于.NET核心开发,使用了新的SDK样式的项目,类似于

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

Exe
netcoreapp3.1

按照如何在Mac OS上构建初始解决方案进行操作

您的项目文件看起来过时了

<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
    <ItemGroup>
        <Compile Include="program.cs" />
    </ItemGroup>

    <Target Name="Build">
        <Csc Sources="@(Compile)"/>
    </Target>
</Project>

对于.NET核心开发,使用了新的SDK样式的项目,类似于

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

Exe
netcoreapp3.1

按照如何在Mac OS上构建初始解决方案进行操作

请分享您的代码好吗?和
csproj
file它与OP中指向MS文档的链接完全相同。这是一个过时的文档,关于旧式的msbuild项目。您需要为dotnet core使用新的sdk样式项目,以下是一个示例:我想从头开始创建project.csproj文件,而不从sdk继承默认设置,因为我想了解msbuild设置。请共享您的代码好吗?和
csproj
file它与OP中指向MS文档的链接完全相同。这是一个过时的文档,关于旧式的msbuild项目。您需要为dotnet core使用新的sdk样式的项目,以下是一个示例:我想从头开始创建project.csproj文件,但不从SDK继承默认设置,因为我想了解msbuild设置。我想从头开始创建project.csproj文件,但不从SDK继承默认设置,因为我想了解msbuild设置。在mac os上,您只能使用带有.NET核心。您可以使用大多数msbuild设置,因为我希望从头开始创建project.csproj文件,而不从SDK继承默认设置,因为我希望了解msbuild设置。您只能在具有.NET core的mac os上使用SDK样式的项目。您可以像往常一样使用大多数msbuild设置