1

我忙于使用控制台应用程序,作为为数据集成过程提供顶级公用方法的API类的CLI。在开发过程中,我需要经常更改项目设置中的命令行参数,即调试部分。如何在VS 2012 C#调试会话期间动态提供命令行参数?

我正在寻找一种动态执行此操作的方法,同时避免每次更改之后重建的成本,例如在入口点Mainstring[] args参数列表中明确设置值的笨拙解决方案。

第一个想到的解决方案是app.config中的自定义配置部分,我可以在其中定义各种命令行的集合,每个命令行都是名称 - 值对列表,并在命令的属性中指定线集合哪一个应该是活跃的。活动命令的名称 - 值对然后将通过静态的,不变的代码动态地注入到所述参数列表string[] args中。

有没有其他办法可以达到这个目的?

+0

只是从文本文件中读取它们。与C#编译器接受的[@选项](http://msdn.microsoft.com/en-us/library/8a1fs1tb%28v=VS.90%29.aspx)相同。在“编辑器”选项卡中保持打开文件以快速进行更改。 – 2013-04-29 17:51:26

回答

0

一件事我能想到的是使用快速监视改变命令行阵列

假设你有下面的代码:

public static void Main(string[] arg) 
{ 
    string s = arg[0]; 
} 

将断点在第一行然后按Shift F9选择ARG后。这将打开quickwatch并在表达式字段中重新分配数组,同时将旧值复制到其中。

arg = new string[3] { arg[0], arg[1], "test" } 
+0

我通常使用即时窗口进行类似的事情,但是这个项目很快就会变得繁重。 – ProfK 2013-04-29 17:22:19

相关问题