我正在使用 MonoDevelop 在单独的解决方案中开发 2 个简单的 C# 程序。
由于它们的性质,它们共享相似的代码库。这两个程序中有大量对象是相同的。
我想将这两个解决方案合并为一个,但我需要这个解决方案在构建时生成两个单独的 .exe 文件(因此我需要实现两个不同的 main() 函数等)。
这可能吗?如果不是,我有什么替代方案来合并解决方案之间共享的代码?
我正在使用 MonoDevelop 在单独的解决方案中开发 2 个简单的 C# 程序。
由于它们的性质,它们共享相似的代码库。这两个程序中有大量对象是相同的。
我想将这两个解决方案合并为一个,但我需要这个解决方案在构建时生成两个单独的 .exe 文件(因此我需要实现两个不同的 main() 函数等)。
这可能吗?如果不是,我有什么替代方案来合并解决方案之间共享的代码?
制作一个解决方案并包含两个现有项目。然后将所有共享代码放入自己的(新)项目中,并在两个现有项目中使用项目引用。你仍然会得到一个通用的 DLL 来共享(由新项目构建,应该是一个类库)。
您将解决方案分成三个项目:
DLL / 类库
执行程序 1
可执行文件 2
DLL 应该包含尽可能多的由两个 exe 共享的代码。这是 DRY,因为您可以同时为两个程序更改它。
更好的是,如果有一天您决定将其中一个 .exe 转换为不同类型的应用程序,即 web 应用程序或 windows phone 的移动应用程序,您不需要重写所有内容。