【问题标题】:Why isn't console.writeline working in Visual Studio for Mac?为什么 console.writeline 在 Visual Studio for Mac 中不起作用?
【发布时间】:2020-07-18 12:39:54
【问题描述】:

我刚刚在 Visual Studio for Mac 中创建了一个控制台应用程序,在 Program.cs 中,自动创建的代码显然有错误。代码如下:

using System;

namespace Console
{
    class MainClass
    {
        public static void Main(string[] args)
        {
            Console.WriteLine("Hello World!");
        }
    }
}

因为它不是我放的,所以你会期望它可以工作,但它没有,它会出现这个错误:

Console/Program.cs(13,13):错误 CS0234:命名空间“Console”中不存在类型或命名空间名称“WriteLine”(您是否缺少程序集引用?)(CS0234)(控制台)

如何解决这个问题?

谢谢!

【问题讨论】:

  • 你不是把 namspace Console 和 System 的那个重叠了吗?

标签: c# visual-studio-mac


【解决方案1】:

由于您的命名空间被称为 Console,当您调用 WriteLine 时,它​​会尝试在您的命名空间中查找一个类并覆盖默认的 System.Console。

重命名命名空间或显式指定系统命名空间中的控制台命名空间:

 System.Console.WriteLine("Hello World!");

【讨论】:

  • 另一种选择是使用using static System.Console;。然后你可以简单地写WriteLine("Hello World!");
  • 在我阅读答案之前就想通了
  • 另一种选择是将您的using 语句放在最深的范围内(即,在您的命名空间声明中)。这也将有助于避免其他命名冲突。例如namespace Console { using System; class Main {} }.
  • 恢复 @GlynnHurrell 最近的编辑,因为它是错误的。原来的答案是正确的。它不是在寻找名为WriteLine方法,而是在寻找一种类型(正如错误所说)。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2021-12-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-03-27
  • 1970-01-01
相关资源
最近更新 更多