Console.Write 在 .Net 核心中

Console.Write in .Net Core

我开始学习.Net Core。我想编写一个简单的 'Hello World' 控制台应用程序。

遗憾的是 System.Console 最初不可用。这是我的代码:

using System;

class Program
{
    public static void Main()
    {
        Console.WriteLine("Hello from Mac");        
    }
}

我应该安装什么包?

仅供参考,我将 Mac 与 VSCode 和 .net core rc1 更新 2 一起使用。

确保在您的 project.json system.console 下引用 frameworks:dnxcore50:dependencies

示例project.json:

{
  "version": "1.0.0-*",
  "description": "ConsoleApp1 Console Application",
  "authors": [ "danny" ],
  "tags": [ "" ],
  "projectUrl": "",
  "licenseUrl": "",

  "compilationOptions": {
       "emitEntryPoint": true
  },

  "dependencies": {
  },

  "commands": {
    "ConsoleApp1": "ConsoleApp1"
  },

  "frameworks": {
    "dnx451": { },
    "dnxcore50": {
      "dependencies": {
        "Microsoft.CSharp": "4.0.1-beta-23516",
        "System.Collections": "4.0.11-beta-23516",
        "System.Console": "4.0.0-beta-23516",
        "System.Linq": "4.0.1-beta-23516",
        "System.Threading": "4.0.11-beta-23516"
      }
    }
  }
}

此外,只是为了让其他人免于头疼:不要像我一样错误地命名您的项目 "MyThing.Console",否则您的代码中的 Console 引用将不会引用 System.Console,它将引用您的命名空间以查找名为 WriteLine!

type

只需添加 NuGet 包

System.Console

到您的项目。无需纠结 project.json。这样,您还可以获得最新(稳定)版本。

一个问题:如果您将控制台项目命名为 Something.Console,请务必完全限定 Write 路径,即

System.Console.Write();