如何在不使用库的情况下在.NET项目之间共享类?

时间:2013-10-21 06:58:21

标签: .net code-sharing

我有两个项目 - 一个是测试项目,另一个是最终版本。我知道有可能将共享代码放入库中,但我希望编译结果将是一个文件,而不需要任何其他DLL。

3 个答案:

答案 0 :(得分:2)

您可以使用ILMerge将.Net程序集的数量合并到一个程序集中。

答案 1 :(得分:2)

您通常应该能够将相同的源代码文件添加到多个项目中。例如,在C#中,项目可以包含指向存储在其他位置的文件的链接,这些文件将像任何其他文件一样包含在编译中。

  • 例如,在Visual Studio 2012中,selected answer to this question指出您可以在按 Alt 键创建链接的同时将文件拖到项目中。
  • This article指出在某些版本的Visual Studio中添加现有文件时,在打开文件对话框中找到了相应的选项。
  • 在SharpDevelop 4中,您可以使用添加 - >从项目(或项目文件夹)的上下文菜单中选择现有项,以选择要添加到项目中的现有文件;如果该文件在项目的文件夹层次结构之外; SharpDevelop将询问您是要复制文件还是只创建一个链接。

答案 2 :(得分:1)

您可以在两个或多个项目之间“链接”代码文件。只需右键单击您的项目,选择Add -> Existing item,然后单击“添加”按钮旁边的向下箭头:

根据我的经验,链接比创建库更简单。链接代码会生成单个版本的单个可执行文件。