我创建了一个方法,它根据传递的命令行参数给出不同的消息框输出结果。
目前,每次我想更改命令行参数字符串时,我都必须开始调试。
有没有办法在调试会话期间更改命令行参数?
编辑:我添加了一些示例代码
private static class MyParsers
{
public static List<string> args;
static MyParsers()
{
args = Environment.GetCommandLineArgs().ToList();
}
public static List<string> ParseOptions()
{
return ParseOptions(true);
}
public static List<string> ParseOptions(bool caseSensitive)
{
return caseSensitive
? args
: args.MyExtToLower();
}
public static bool OptionExists(string option)
{
return OptionExists(option, true);
}
public static bool OptionExists(string option, bool caseSensitive)
{
return caseSensitive
? ParseOptions().Contains(option)
: ParseOptions().MyExtToLower().Contains(option);
}
public static bool OptionExists(string option, string delimiter)
{
return OptionExists(option, false, delimiter);
}
public static bool OptionExists(string option, bool caseSensitive, string delimiter)
{
var args = ParseOptions(caseSensitive);
for (var i = 1; i < args.Count; i++)
{
if (args[i].Contains(option + delimiter)) return true;
}
return false;
}
}
然后我打电话MessageBox.Show(MyParsers.OptionExists("/list","=").ToString());
如果命令行参数是/list=blah它返回 true。
如果命令行参数是/listary它返回 false。
您建议使用什么方法快速更改命令行参数?考虑到我正在使用的上述代码。