MetadataLoadContext.CoreAssembly Propriedade
Definição
Importante
Algumas informações dizem respeito a um produto pré-lançado que pode ser substancialmente modificado antes de ser lançado. A Microsoft não faz garantias, de forma expressa ou implícita, em relação à informação aqui apresentada.
Obtém ou define o conjunto que denota o "conjunto do sistema" que alberga os tipos bem conhecidos como 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
Valor de Propriedade
Um Assembly exemplo.
Observações
O conjunto do núcleo é tratado de forma diferente de outros conjuntos porque as referências a estes tipos bem conhecidos não incluem a referência de montagem, ao contrário dos tipos normais.
Normalmente, este conjunto chama-se "System.Runtime", "mscorlib" ou "netstandard".
O CoreAssembly é determinado ao passar o coreAssemblyName parâmetro ao MetadataLoadContext construtor, que por sua vez o passa ao MetadataAssemblyResolver.Resolve método.
Se não for especificado coreAssemblyName nenhum argumento no construtor de MetadataLoadContext, então são usados valores por defeito, incluindo "mscorlib", "System.Runtime" e "netstandard".
O conjunto de núcleos designado não precisa de conter diretamente os tipos de núcleos. Pode encaminhá-los para outras assemblagens. Assim, é perfeitamente permitido usar a fachada mscorlib como conjunto central designado.
Note-se que System.Runtime não é uma montagem core ideal porque exclui alguns dos tipos de atributos pseudo-personalizados relacionados com interop, como DllImportAttribute. No entanto, pode ser útil se não tiveres interesse nessas características. A API CustomAttributes irá saltar esses atributos se o core assembly não incluir os tipos necessários.
Se não for possível encontrar um conjunto de núcleo, o construtor de MetadataLoadContext lança uma exceção.