public static void Main(string[] args) { List <string> names = new List <string> (); Dictionary <string, string> map = new Dictionary <string, string> (); int repeat = 1; OptionSet p = new DemoOptionSet() { { "n|name=", v => names.Add(v) }, { "r|repeat:", (int v) => repeat = v }, { "m|map=", (k, v) => map.Add(k, v) }, }; List <string> extra; try { extra = p.Parse(args); } catch (OptionException e) { Console.Write("subclass: "); Console.WriteLine(e.Message); return; } string message; if (extra.Count > 0) { message = string.Join(" ", extra.ToArray()); } else { message = "Hello {0}!"; } foreach (string name in names) { for (int i = 0; i < repeat; ++i) { Console.WriteLine(message, name); } } List <string> keys = new List <string>(map.Keys); keys.Sort(); foreach (string key in keys) { Console.WriteLine("Key: {0}={1}", key, map [key]); } }
public static void Main (string[] args) { List<string> names = new List<string> (); Dictionary<string,string> map = new Dictionary<string,string> (); int repeat = 1; OptionSet p = new DemoOptionSet () { { "n|name=", v => names.Add (v) }, { "r|repeat:", (int v) => repeat = v }, { "m|map=", (k,v) => map.Add (k, v) }, }; List<string> extra; try { extra = p.Parse (args); } catch (OptionException e) { Console.Write ("subclass: "); Console.WriteLine (e.Message); return; } string message; if (extra.Count > 0) { message = string.Join (" ", extra.ToArray ()); } else { message = "Hello {0}!"; } foreach (string name in names) { for (int i = 0; i < repeat; ++i) Console.WriteLine (message, name); } List<string> keys = new List<string>(map.Keys); keys.Sort (); foreach (string key in keys) { Console.WriteLine ("Key: {0}={1}", key, map [key]); } }