2010-11-03 143 views
1

当我创建对Visual Studio中相同解决方案的一部分的另一个项目(库)的引用时,该项目是编译到我的程序集中,还是链接到由其他项目创建的程序集?我想知道是否需要分发这两个程序集,或者如果我只分发一个程序集。引用另一个项目?

如果后者(必须分配两者),我该如何强制它编译成一个程序集?

回答

6

是项目然后编译到我的程序集,或者它链接到其他项目创建的程序集?

另一个项目是在它自己的程序集中;它不会编译到你的。

我想知道是否需要分发这两个程序集,或者如果我只能分发一个程序集。

你必须分配两者。

我该如何强制它编译成一个程序集?

除了将源代码从其他项目移动到主项目之外,没有内置的方法可以使用Visual Studio进行此操作。你可以看看ILMerge

1

如果您引用另一个项目,那么编译器将为每个执行整体解决方案所需的项目生成一个dll文件。

1

Solution file用来简单工作,并管理项目,它不会改变默认项目的方式,可能是你想安装盾?有不同的Dll不是坏事,你可以更好地发展你的主项目。

2

您可以在项目的属性页面上使用预生成操作将源文件从其他项目复制到主项目中。 这样你只能在一个地方修改源代码,并且总是有一个单独的dll作为选项。当你决定使用DLL删除复制的源文件和预生成操作并添加对库项目的引用