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