将GUI程序和控制台应用程序组合到一个EXE中是一个坏主意吗?

Eri*_*tas 5 .net c# wpf console-application

我正在编写一个具有基于WPF的界面的小实用程序.我还希望能够通过使用命令行参数执行程序来自动执行该实用程序执行的相同任务.将这两个任务合并到一个程序中是一个坏主意吗?我具有我的工具在单独的共享库中执行的实际逻辑和功能.所以如果它们是分开的,我就不会复制很多代码.

我想在我的App.cs文件中做这样的事情

private void Application_Startup(object sender, StartupEventArgs e)
    {
        if (e.Args.Length > 1)
        {
            //Go do automated tasks
        }
        else
        {
            //open GUI

            Window window = new Window();

            this.MainWindow = window;

            window.Show();
        }
    }
Run Code Online (Sandbox Code Playgroud)

mck*_*ejm 1

在本例中,我将创建一个从不同主机项目调用的功能类库。MyApp.WPF 将 MyLib 作为 dll 引用...MyApp.Console 将 MyLib 作为 dll 引用。

编辑我看到您已经拥有功能隔离的类库。那么将其保留在同一个应用程序中的真正好处是什么?