Class 命令行界面结构

Class structure for command-line interface

我正在用 C# 开发一个简单的命令行界面。目前,它解析用户的输入并沿着一长串 if-then-else 语句运行,以执行用户可以键入的各种命令。一些例子:

if-then 链只是为了让事情正常进行。我想以更好的方式处理命令在界面中的表示方式。

我的第一个想法是 Class Command 具有以下属性:

由于这只是我的第一个想法,而且我对此还比较陌生,所以我想知道有什么更好的方法。

在这种情况下,Switch case 可能比 if..else 更好:

switch (command)
{
    case "copy":
        // Copy
        break;
    case "create":
        // Create;
        break;
}

对于命令,命令模式是实现界面的最佳方式,很少参考命令设计模式入手: https://code.msdn.microsoft.com/windowsapps/Design-Patterns-Command-1962d567 http://www.blackwasp.co.uk/command.aspx

您还可以参考在线命令行实用程序的示例实现,了解如何解析命令行参数,例如: http://crmcommandline.codeplex.com/