多文件程序集

注释

本文特定于 .NET Framework。 它不适用于 .NET 的较新版本实现,包括 .NET 6 及更高版本。

可以使用命令行编译器或 Visual Studio 和 Visual C++ 创建面向 .NET Framework 的多文件程序集。 程序集中的一个文件必须包含程序集清单。 启动应用程序的程序集还必须包含入口点,例如 MainWinMain 方法。

例如,假设你有一个包含两个代码模块的应用程序, Client.csStringer.csStringer.cs创建myStringer由Client.cs中的代码引用的命名空间。 Client.cs 包含 Main 方法,即应用程序的入口点。 在此示例中,将编译两个代码模块,然后创建一个包含程序集清单的第三个文件,用于启动应用程序。 程序集清单同时引用 客户端Stringer 模块。

注释

即使程序集具有多个代码模块,多文件程序集也只能有一个入口点。

创建多文件程序集的原因可能有几个:

  • 合并以不同语言编写的模块。 这是创建多文件程序集的最常见原因。

  • 若要优化下载应用程序,请将很少使用的类型放入仅在需要时下载的模块中。

  • 合并由多个开发人员编写的代码模块。 虽然每一位开发人员都可以将各个代码模块编译成程序集,但这样会强制一些类型公开(如果所有模块均放在多文件程序集中,则不会公开)。

创建程序集后,可以对包含程序集清单的文件进行签名,从而对程序集进行签名,也可以为该文件和程序集指定强名称,并将其放入全局程序集缓存中。

另请参阅