C# 中的 System.Reflection 命名空间
C# 中的 System.Reflection 命名空间 C# 中的 System.Reflection 命名空间包含通过检查元数据提供有关程序集、模块、成员、参数和其他代码项信息的类型。此命名空间中的 Assembly 类表示程序集。通常,你可以在 Type 上使用 Assembly 属性访问它。
程序集的标识由四项组成 −
- 简单名称
- AssemblyVersion 属性中的版本,采用 major.minor.build.revision 格式(如果不存在,则为 0.0.0.0)
- 区域性(如果不是卫星,则为中性)
- 公钥令牌(如果不强命名,则为 null)
一个更完全限定的程序集名称是一个字符串,它包含这些识别项并采用以下格式 −
simple-name, Version=version, Culture=culture, PublicKeyToken=public-key
例如,
Assembly assembly = typeof (Person).Assembly; // Person is a class name // Prints: c-sharp, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null Console.WriteLine(assembly.FullName);
程序集加载是从已知位置加载程序集的过程。通常,CLR 可以使用程序集的完整名称来加载程序集。此过程称为程序集解析。当 CLR 需要解决某个依赖项或者你作为程序员希望使用 Assembly.Load(assemblyName) 方法动态加载某个程序集时,就会执行程序集解析。
广告