在MonoDevelop中读取控制台输入

19

我正在尝试编写一个简单的C#程序,它可以接收输入并将其作为输出传递。例如,输出应为:

What is your name?
{user input}
Your name is {user input}
程序是:

The program is:

public static void Main(string[] args)
{
    Console.WriteLine("What is your name?");
    string name = Console.ReadLine();
    Console.WriteLine("Your name is: " + name);
    Console.ReadKey();
}

这个被包含在一个名为 'MainClass' 的类中。

它的输出是:

What is your name?
Your name is:
这个为什么不起作用,我该怎么让它起作用呢?顺便说一句,我正在使用MonoDevelop,在最后一个WriteLine之后添加了Console.ReadKey();,但没有任何变化。

你是如何运行程序的? - i_am_jorf
2个回答

45
您正在尝试在MonoDevelop的应用程序输出窗口中输入,但它是只读的。
您可以通过右键单击项目的“选项”菜单项并勾选“运行外部控制台”来配置MonoDevelop以在命令提示符下自动运行程序,在“运行 > 通用”树下。
我猜那个给我-1的家伙被那个巨大的“在我的机器上工作”标志所蒙蔽,尽管如此,这确实是正确且唯一的答案。 alt text http://psf.biz/public/monodevelop_run_on_external_console.jpg

5
我同意。当问题发布时,以及我最初的回答给出时,并没有提到MonoDevelop。 - configurator
这不适用于单个文件,只适用于非项目程序。 - GunJack

5

只在我的电脑上有效
(来源: typepad.com)

你的问题是程序读取控制台输入后立即退出吗?如果是,那么在最后一个 WriteLine 后添加 Console.ReadKey(); 以便程序等待按键。否则,我不知道问题出在哪里;我复制+粘贴了代码,它可以工作。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接