我有一个winforms应用程序,它从gui接收输入并运行逻辑以提供输出。
我想创建同一个应用程序的控制台版本,我在其中指定具有输入值的文件(而不是通过gui提供)并运行winform应用程序逻辑并将输出写入文件。
我的winform应用程序会生成一个我希望使用的dll,以便我的应用程序中的任何更改也会反映在控制台应用程序中。
请建议我如何实现这一目标。我不知道该怎么办。
答案 0 :(得分:3)
你不需要做额外的工作。
选项1:Environment.GetCommandLineArgs()
您可以简单地使用Environment.GetCommandLineArgs()
来解析它并根据需要使用参数。
例如:
Environment.GetCommandLineArgs().ToList()
.ForEach(x =>
{
MessageBox.Show(x);
});
例如,您可以从命令行使用您的程序,如下所示:
yourProgram.exe param1 "another param" anotherParam
yourProgram.exe "d:\myfile.txt"
选项2:static void Main(params string [] args)
此外,您可以通过static void Main(params string[] args)
方式更改主签名,并以这种方式使用args:
args.ToList()
.ForEach(x =>
{
MessageBox.Show(x);
});
并以这种方式使用它:
yourProgram.exe param1 "another param" anotherParam
yourProgram.exe "d:\myfile.txt"
注意:强>
答案 1 :(得分:0)
只需将另一个项目(控制台应用程序)添加到您的解决方案中,然后将IO操作放在那里。逻辑保留在类库中。