2

我正在使用 MonoDevelop 在单独的解决方案中开发 2 个简单的 C# 程序。

由于它们的性质,它们共享相似的代码库。这两个程序中有大量对象是相同的。

我想将这两个解决方案合并为一个,但我需要这个解决方案在构建时生成两个单独的 .exe 文件(因此我需要实现两个不同的 main() 函数等)。

这可能吗?如果不是,我有什么替代方案来合并解决方案之间共享的代码?

4

2 回答 2

2

制作一个解决方案并包含两个现有项目。然后将所有共享代码放入自己的(新)项目中,并在两个现有项目中使用项目引用。你仍然会得到一个通用的 DLL 来共享(由新项目构建,应该是一个类库)。

于 2013-05-30T14:49:47.870 回答
2

您将解决方案分成三个项目:

DLL / 类库

  • 包含所有共享代码

执行程序 1

  • 参考 DLL
  • 使用共享代码

可执行文件 2

  • 参考 DLL
  • 使用共享代码

DLL 应该包含尽可能多的由两个 exe 共享的代码。这是 DRY,因为您可以同时为两个程序更改它。

更好的是,如果有一天您决定将其中一个 .exe 转换为不同类型的应用程序,即 web 应用程序或 windows phone 的移动应用程序,您不需要重写所有内容。

于 2013-05-30T15:47:25.740 回答