退出命令行程序的首选方法是什么?

时间:2011-09-13 14:52:14

标签: c# .net command-line

这应该是直截了当的。我只需要退出命令行c#程序 - 没有花哨的东西。

我应该使用

Environment.Exit();

this.Close();

或其他什么?

2 个答案:

答案 0 :(得分:16)

只需从Main方法返回。

修改

如果你真的丢失了流程并想要从应用程序的任何地方退出(比如Main中调用的任何方法),你可以使用:

Environment.Exit(0);

记住通常你应该在一切正常时将0返回到调用进程(OS),如果发生错误并且执行没有像应该的那样顺利执行,则返回非零值。

答案 1 :(得分:12)

return;方法中使用Main 如果在决定退出程序时不在main方法中,则需要从Main方法当前执行的方法返回。

示例:

void Main(...)
{
    DisplayAvailableCommands();
    ProcessCommands();
}

void ProcessCommands()
{
    while(true)
    {
        var command = ReadCommandFromConsole();
        switch(command)
        {
            case "help":
                DisplayHelp();
                break;
            case "exit":
                return;
        }
    }
}

这并不是控制台应用程序良好整体设计的一个例子,但它说明了这一点。