Visual Studio中的.NET项目是否总是编译成单个文件?

Eri*_*tas 7 .net projects visual-studio

这是一件非常简单的事情,没有人能够在我读过的任何教程中说出来.

我一直在创建一些独立的.NET应用程序以及一些基于DLL的其他程序插件.我注意到Visual Studio中的项目,至少使用Windows应用程序和类库,编译成单个文件(EXE或DLL).

总是这样吗?在组织更大的应用程序方面,我是否应该始终将Visual Studio中的项目视为与最终程序中的单个文件相对应?

SLa*_*aks 3

每个项目都会编译为一个文件。(网站项目除外)

但是,如果您将项目中任何文件的“生成操作”设置为“始终复制”或“如果较新则复制”,则项目会将该文件复制到输出文件夹。
此外,如果 EXE 项目有 App.config 文件,它也会被复制到输出文件夹。

如果您的项目引用了不属于核心框架一部分的 DLL(无论是您自己的还是其他人的),它将将该 DLL 复制到项目的输出文件夹,从而生成两个文件(尽管其中只有一个包含来自项目本身)

此外,除了 DLL 和 EXE 之外,Visual Studio 还将在输出文件夹中创建一个包含调试符号的 .pdb 文件。该文件由调试器使用,不得分发给您的用户。(除非您希望他们为您调试代码)