C# 如何在控制台程序中最好地处理带修饰符的参数?

C# 如何在控制台程序中最好地处理带修饰符的参数?,c#,console-application,C#,Console Application,我正在为一个控制台程序编写一个参数解析器,但我确信我当前的实现并不是最好的方法。由于这是一个常见的问题,是否有标准/更好/最好的方法将带有可选修饰符的多个参数传递给控制台程序 private static void Main(params string[] args) { for (int i = 0; i < args.Length; i++) { // Is there a valid argument? if (args[i] == "

我正在为一个控制台程序编写一个参数解析器,但我确信我当前的实现并不是最好的方法。由于这是一个常见的问题,是否有标准/更好/最好的方法将带有可选修饰符的多个参数传递给控制台程序

private static void Main(params string[] args)
{
    for (int i = 0; i < args.Length; i++)
    {
        // Is there a valid argument?
        if (args[i] == "/r")
        {
            Console.WriteLine("Argument: /r");

            // Is there a successive argument?
            if (i + 1 < args.Length)
            {
                // Is the successive argument an argument or a modifier?
                if (args[i + 1].IndexOf("/", StringComparison.CurrentCultureIgnoreCase) == -1)
                {
                    Console.WriteLine("Argument: /r " + args[i + 1]);
                }
            }
        }
    }
}
private static void Main(参数字符串[]args)
{
for(int i=0;i

我看到的这个实现的主要问题是,我必须为每个参数和修饰符重写最后两个if块,我认为这对于一个大型程序来说会变得很难操作。

您可能想看看-这使它变得非常简单。看起来真的很棒!非常感谢。