托管模块与程序集

  • CLR实际上并不是和托管模块来打交道的,它直接打交道的是程序集。
  • 程序集是一个或者多个托管模块,以及一些资源文件的逻辑组合。
  • 程序集才是组件复用,以及实施安全策略和版本策略的最小单位。
  • 在程序集中有一个清单,描述了组成程序集的文件。
  • 默认情况下,编译器会将产生的托管模块转换为一个程序集。也就是说,c#编译器产生的是一个包含了清单的托管模块。其中的清单表明程序集中仅包含了一个文件。对于仅包含一个托管模块,并且没有资源文件的项目来说,程序集就是托管模块,而且在创建过程中,不需要执行其它的任何步骤,比如不需要执行链接各个文件。如果希望将一组文件合并到一个程序集中,我们还需要程序集连接器AL
  • 对于一个可重用、可部署、可实施版本管理的组件来说,程序集允许我们分离它的逻辑表示和物理表示。如何将代码和资源划分到不同的文件中完全取决于我们自己。例如我们可以将一些很少使用的类型或者资源放在一个单独的程序集文件中,需要的时候才从web上下载,如果没有用到的话,就不会被下载,即节省空间又节省安装时间。
  • 程序集中的模块还包含它所引用的程序集的一些信息(比如版本号信息)。这些信息使得一个程序集可以自描述。换句话说,CLR知道执行一个程序集所需要的所有内容,它不需要再在注册表或者AD里获取额外的信息,因此程序集的部署比非托管组件的部署容易的多。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值