min10

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::

表示一个程序集,它是一个可重用、无版本冲突并且可自我描述的公共语言运行库应用程序构造块。

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

若要获取 Assembly 对象(表示当前加载到应用程序域(例如,简单项目的默认应用程序域)中的程序集)的数组,可以使用 AppDomain.GetAssemblies 方法。

若要动态加载程序集,Assembly 类可提供下列静态方法(在 Visual Basic 中为 Shared 方法)。程序集被加载到发生加载操作的应用程序域中。

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

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

  • LoadFile 和 LoadFrom 方法是为必须由路径标识程序集的极少数方案提供的。

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

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

  • GetName 方法返回一个 AssemblyName 对象,该对象提供对程序集显示名称部分的访问。

  • GetCustomAttributes 方法列出应用于程序集的属性。

  • GetFiles 方法提供对程序集清单中文件的访问。

  • GetManifestResourceNames 方法提供程序集清单中资源的名称。

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

有关程序集的更多信息,请参见应用程序域和程序集

 

Load方法带有一个程序集标志并载入它,Load  将引起CLR把策略应用到程序集上,先后在全局程序集缓冲区,应用程序基目录和私有路径下面查找该程序集,如果找不到该程序集系统抛出异常 
LoadFrom方法:传递一个程序集文件的路径名(包括扩展名),CLR会载入您指定的这个程序集,传递的这个参数不能包含任何关于版本号的信息,区域性,和公钥信息,如果在指定路径找不到程序集抛出异常。 

posted on 2008-10-23 09:23  min10  阅读(456)  评论(0编辑  收藏  举报