Ubuntu终端不等待Console.ReadKey()输入

我正在使用MonoDevelop在Ubuntu Desktop 14.0.5 LTS上编写C#(.NET)代码。 在测试一个简单的Hello World代码时,我遇到了一个问题 – 在Windows之前,我使用了Console.ReadKey()语句来确保控制台在显示输出后不会立即消失。 但是,这个技巧不适用于Ubuntu。 这是代码,如果你需要看到它:

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

尽管最后一个声明,控制台显示大约1/100秒消失之前。 确切地说,Console.ReadKey()语句被忽略(??)。 我不知道为什么会这样。 几个小时前,我是新手使用Ubuntu并安装了MonoDevelop。

我该如何解决这个问题?

如果要运行未从Debian软件包安装的Mono或Microsoft .NET软件,则需要安装mono-complete而不是Mono开发工具( mono-devel )软件包。


  1. 安装mono-complete

     sudo apt-get install mono-complete 
  2. 将C#代码保存在名为hello.cs的文件中。

  3. 使hello.cs可执行。 右键单击hello.cs文件 – >选择属性 – > 权限选项卡 – >在允许执行文件作为程序的左侧放置一个复选标记。

  4. 使用cd命令将目录更改为包含hello.cs文件的目录。

  5. 使用mcs编译器并从源hello.cs创建名为hello.exe的Windows可执行文件。

     mcs -out:hello.exe hello.cs 
  6. 使用mono运行hello.exe程序。

     mono hello.exe 
  7. 在步骤6中运行程序的结果应该是:

     Hello World! 
  8. Enter键退回到默认终端提示符。

在MonoDevelop中运行C#程序

  1. 安装MonoDevelop

     sudo apt-get install monodevelop # 17.10 and earlier 
  2. 打开MonoDevelop应用程序。

  3. 创建一个新项目。 选择File – > New – > Solution – > .NET – > Console Project – >选中Console Project旁边的下拉菜单以确保选择C# – >单击Next按钮 – >选择项目的名称和目录位置- >单击“ 创建”按钮。

  4. 在左侧窗格中选择Program.cs。 将C#代码复制到Program.cs中。

  5. 选择Build – > Build All

  6. 单击MonoDevelop左上角的运行箭头以运行该程序。