C# Assembly


Assembly:[ə'sembli]   装配;集会,集合

在C#里Assembly类表示一个程序集,它是一个可重用、无版本冲突并且可自我描述的公共语言运行时(Common Language Runtime )应用程序构造块,Assembly包含来程序的名称,版本号,自我描述,文件关联关系和文件位置等信息【在项目中有一个Assembly.cs类文件存储着程序集的信息】。该Assembly在System.Reflection命名空间下,程序集  mscorlib(在 mscorlib.dll 中)。


用处:

使用 Assembly 类可以加载程序集、浏览程序集的元数据和构成部分、发现程序集中包含的类型以及创建这些类型的实例。

程序集总是被加载到应用程序域中运用,所以若要获取Assembly对象数组,可以使用AppDomain对象的GetAssemblies方法。

程序集可以动态加载Assembly 类可提供下列静态方法。 程序集被加载到发生加载操作的应用程序域中。

  • 加载程序集的推荐方式是使用 Load 方法,该方法标识要由其显示名称加载的程序集(例如“System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089”)。 搜索程序集时遵守运行时如何定位程序集中描述的规则。

  • 使用 ReflectionOnlyLoadReflectionOnlyLoadFrom 方法可以为反射加载程序集,但不能为执行加载程序集。 例如,可以由在 32 位平台上运行的代码检查针对 64 位平台的程序集。

  • LoadFileLoadFrom 方法是为必须由路径标识程序集的极少数方案提供的。(提供程序集路径)

若要获取当前执行的程序集的 Assembly 对象,可以使用 GetExecutingAssembly 方法。

Assembly 类的许多成员都提供有关程序集的信息。 例如:

GetTypes 方法列出程序集中的所有类型。 GetExportedTypes 方法列出对程序集以外的调用方可见的类型。 GetType 方法可用于在程序集中搜索特定类型。 CreateInstance 方法可用于在程序集中搜索和创建类型的实例。


推荐扩展学习反射、应用程序域、特性等知识


  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值