程序集(Assembly)和模块(Managed Module)的区别
- 程序集,就是程序的集合。程序,就是指模块。所以一个程序集里可以有一个或多个模块。
- 一个dll或exe,就是一个程序集。
- 对于CLR来说,是不能直接使用Module的。Assembly是一个重用的基本单元,有自己的版本和安全信息的保护。
示例:
一个程序集里一个模块:
csc /out:test.exe /t:exe program.cs
一个程序集多个模块:
csc /t:module testmodule.cs
你就会得到一个testmodule.netmodule的文件,这就是一个模块文件,你可以同样的方式得到另外一个模块文件然后在用AL.exe把两个模块文件编译进一个程序集mergedAssemly.dll:
Al /out:mergedAssemly.dll /t:library testmodule.netmodule testmodule1.netmodule