MetadataLoadContext.CoreAssembly 属性

定义

获取或设置表示包含已知类型的“系统程序集”的程序集,例如 Int32

public:
 property System::Reflection::Assembly ^ CoreAssembly { System::Reflection::Assembly ^ get(); };
public System.Reflection.Assembly? CoreAssembly { get; }
member this.CoreAssembly : System.Reflection.Assembly
Public ReadOnly Property CoreAssembly As Assembly

属性值

实例 Assembly

注解

核心程序集的处理方式与其他程序集不同,因为对这些已知类型的引用不包括程序集引用,这与普通类型不同。

通常,此程序集名为“System.Runtime”、“mscorlib”或“netstandard”。

通过将coreAssemblyName参数MetadataLoadContext传递给构造函数来确定,CoreAssembly该构造函数又将其MetadataAssemblyResolver.Resolve传递给方法。

coreAssemblyName如果未在构造函数MetadataLoadContext中指定任何参数,则使用默认值,包括“mscorlib”、“System.Runtime”和“netstandard”。

指定的核心程序集不需要直接包含核心类型。 它可以键入将它们转发到其他程序集。 因此,完全允许将 mscorlib 外观用作指定的核心程序集。

请注意, System.Runtime 这不是理想的核心程序集,因为它排除了某些与互操作相关的伪自定义属性类型,例如 DllImportAttribute。 但是,如果你对这些属性没有兴趣,它可以提供服务。 如果核心程序集不包含必要的类型,CustomAttributes API 将跳过这些属性。

如果找不到核心程序集,则引发异常的 MetadataLoadContext 构造函数。

适用于