Assembly.Load Método
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.
Carrega um conjunto.
Sobrecargas
| Name | Description |
|---|---|
| Load(AssemblyName) |
Carrega um assembly dado o seu AssemblyName. |
| Load(Byte[], Byte[], SecurityContextSource) |
Carrega o conjunto com uma imagem baseada em formato de ficheiro de objeto comum (COFF) contendo um conjunto emitido, opcionalmente incluindo símbolos e especificando a fonte para o contexto de segurança. |
| Load(Byte[], Byte[], Evidence) |
Obsoleto.
Carrega a montagem com uma imagem baseada em formato de ficheiro de objeto comum (COFF) contendo uma montagem emitida, incluindo opcionalmente símbolos e evidências da montagem. |
| Load(String, Evidence) |
Obsoleto.
Carrega um conjunto com o seu nome de exibição e usando as provas fornecidas. |
| Load(Byte[]) |
Carrega o conjunto com uma imagem baseada em formato de ficheiro objeto comum (COFF) contendo um conjunto emitido. |
| Load(Byte[], Byte[]) |
Carrega o conjunto com uma imagem baseada em formato de ficheiro de objeto comum (COFF) contendo um conjunto emitido, incluindo opcionalmente símbolos para o conjunto. |
| Load(String) |
Carrega um assembly com o nome especificado. |
| Load(AssemblyName, Evidence) |
Obsoleto.
Carrega um assembly dado o seu AssemblyName. O conjunto é carregado usando as provas fornecidas. |
Load(AssemblyName)
Carrega um assembly dado o seu AssemblyName.
public:
static System::Reflection::Assembly ^ Load(System::Reflection::AssemblyName ^ assemblyRef);
public static System.Reflection.Assembly Load(System.Reflection.AssemblyName assemblyRef);
static member Load : System.Reflection.AssemblyName -> System.Reflection.Assembly
Public Shared Function Load (assemblyRef As AssemblyName) As Assembly
Parâmetros
- assemblyRef
- AssemblyName
O objeto que descreve a montagem a ser carregada.
Devoluções
O conjunto carregado.
Exceções
assemblyRef é null.
assemblyRef não foi encontrado.
Um ficheiro encontrado não pôde ser carregado.
-ou-
.NET Framework apenas: assemblyRef especifica uma localização desativada com base em <loadFromRemoteSources>.
Nota: Em .NET para aplicações Windows Store ou a Portable Class Library, apanhe a exceção da classe base, IOException, em vez disso.
assemblyRef não é uma assembly válida para o runtime atualmente carregado.
Exemplos
O exemplo seguinte instancia um AssemblyName objeto e usa-o para carregar a sysglobal.dll montagem. O exemplo mostra então o nome completo dos tipos públicos da assembleia.
using System;
using System.Reflection;
public class Example
{
public static void Main()
{
String fullName = "sysglobl, Version=4.0.0.0, Culture=neutral, " +
"PublicKeyToken=b03f5f7f11d50a3a, processor architecture=MSIL";
var an = new AssemblyName(fullName);
var assem = Assembly.Load(an);
Console.WriteLine("Public types in assembly {0}:", assem.FullName);
foreach (var t in assem.GetTypes())
if (t.IsPublic)
Console.WriteLine(" {0}", t.FullName);
}
}
// The example displays the following output:
// Public types in assembly sysglobl, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a:
// System.Globalization.CultureAndRegionInfoBuilder
// System.Globalization.CultureAndRegionModifiers
Imports System.Reflection
Module Example
Public Sub Main()
Dim fullName As String = "sysglobl, Version=4.0.0.0, Culture=neutral, " +
"PublicKeyToken=b03f5f7f11d50a3a, processor architecture=MSIL"
Dim an As New AssemblyName(fullName)
Dim assem As Assembly = Assembly.Load(an)
Console.WriteLine("Public types in assembly {0}:", assem.FullName)
For Each t As Type in assem.GetTypes()
If t.IsPublic Then Console.WriteLine(" {0}", t.FullName)
Next
End Sub
End Module
' The example displays the following output:
' Public types in assembly sysglobl, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a:
' System.Globalization.CultureAndRegionInfoBuilder
' System.Globalization.CultureAndRegionModifiers
Observações
Em .NET Core/.NET 5+, o conjunto alvo será carregado na corrente AssemblyLoadContext ou no contexto AssemblyLoadContext.CurrentContextualReflectionContext se estiver definido. Para mais informações sobre carregamento de montagem, consulte Algoritmo de carregamento de montagem gerido.
Note
.NET Framework apenas: Para informações sobre o carregamento de montagens a partir de locais remotos, veja <loadFromRemoteSources>.
Note
.NET Framework apenas: Não use um conjunto AssemblyName apenas com o conjunto de propriedades CodeBase. A CodeBase propriedade não fornece quaisquer elementos da identidade assembly (como nome ou versão), pelo que o carregamento não ocorre de acordo com as regras load-by-identity, como seria de esperar do Load método. Em vez disso, o assembly é carregado usando regras load-from. Para informações sobre as desvantagens de usar o contexto load-from, consulte sobrecarga Assembly.LoadFrom de métodos ou Melhores Práticas para Carregamento de Montagem.
Note
.NET Framework apenas: Se tanto a propriedade AssemblyName.Name como a propriedade AssemblyName.CodeBase estiverem definidas, a primeira tentativa de carregar a assembly usa o nome de exibição (incluindo versão, cultura, e assim sucessivamente, conforme devolvido pela propriedade Assembly.FullName). Se o ficheiro não for encontrado, CodeBase é usado para procurar a assembleia. Se a montagem for encontrada usando CodeBase, o nome de exibição é comparado com o conjunto. Se a correspondência falhar, é lançado a.FileLoadException
Ver também
Aplica-se a
Load(Byte[], Byte[], SecurityContextSource)
Carrega o conjunto com uma imagem baseada em formato de ficheiro de objeto comum (COFF) contendo um conjunto emitido, opcionalmente incluindo símbolos e especificando a fonte para o contexto de segurança.
public:
static System::Reflection::Assembly ^ Load(cli::array <System::Byte> ^ rawAssembly, cli::array <System::Byte> ^ rawSymbolStore, System::Security::SecurityContextSource securityContextSource);
public static System.Reflection.Assembly Load(byte[] rawAssembly, byte[] rawSymbolStore, System.Security.SecurityContextSource securityContextSource);
static member Load : byte[] * byte[] * System.Security.SecurityContextSource -> System.Reflection.Assembly
Public Shared Function Load (rawAssembly As Byte(), rawSymbolStore As Byte(), securityContextSource As SecurityContextSource) As Assembly
Parâmetros
- rawAssembly
- Byte[]
Um array de bytes que é uma imagem baseada em COFF contendo um conjunto emitido.
- rawSymbolStore
- Byte[]
Um array de bytes que contém os bytes brutos que representam os símbolos para a assembleia.
- securityContextSource
- SecurityContextSource
A origem do contexto de segurança.
Devoluções
O conjunto carregado.
Exceções
rawAssembly é null.
rawAssembly não é uma assembly válida para o runtime atualmente carregado.
O valor de securityContextSource não é um dos valores de enumeração.
Observações
O assembly é carregado no domínio de aplicação do chamador usando a fonte especificada para o contexto de segurança. Se rawSymbolStore foi especificado, os bytes brutos que representam os símbolos da montagem também são carregados.
Aplica-se a
Load(Byte[], Byte[], Evidence)
Atenção
This method is obsolete and will be removed in a future release of the .NET Framework. Please use an overload of Load which does not take an Evidence parameter. See http://go.microsoft.com/fwlink/?LinkID=155570 for more information.
Carrega a montagem com uma imagem baseada em formato de ficheiro de objeto comum (COFF) contendo uma montagem emitida, incluindo opcionalmente símbolos e evidências da montagem.
public:
static System::Reflection::Assembly ^ Load(cli::array <System::Byte> ^ rawAssembly, cli::array <System::Byte> ^ rawSymbolStore, System::Security::Policy::Evidence ^ securityEvidence);
public static System.Reflection.Assembly Load(byte[] rawAssembly, byte[] rawSymbolStore, System.Security.Policy.Evidence securityEvidence);
[System.Obsolete("This method is obsolete and will be removed in a future release of the .NET Framework. Please use an overload of Load which does not take an Evidence parameter. See http://go.microsoft.com/fwlink/?LinkID=155570 for more information.")]
public static System.Reflection.Assembly Load(byte[] rawAssembly, byte[] rawSymbolStore, System.Security.Policy.Evidence securityEvidence);
static member Load : byte[] * byte[] * System.Security.Policy.Evidence -> System.Reflection.Assembly
[<System.Obsolete("This method is obsolete and will be removed in a future release of the .NET Framework. Please use an overload of Load which does not take an Evidence parameter. See http://go.microsoft.com/fwlink/?LinkID=155570 for more information.")>]
static member Load : byte[] * byte[] * System.Security.Policy.Evidence -> System.Reflection.Assembly
Public Shared Function Load (rawAssembly As Byte(), rawSymbolStore As Byte(), securityEvidence As Evidence) As Assembly
Parâmetros
- rawAssembly
- Byte[]
Um array de bytes que é uma imagem baseada em COFF contendo um conjunto emitido.
- rawSymbolStore
- Byte[]
Um array de bytes que contém os bytes brutos que representam os símbolos para a assembleia.
- securityEvidence
- Evidence
Provas para carregar a assembleia.
Devoluções
O conjunto carregado.
- Atributos
Exceções
rawAssembly é null.
rawAssembly não é uma assembly válida para o runtime atualmente carregado.
Um conjunto ou módulo foi carregado duas vezes com duas evidências diferentes.
securityEvidence não nullé . Por defeito, a política CAS legada não está ativada no .NET Framework 4; quando não está ativada, securityEvidence deve ser null.
Observações
Esta sobrecarga de métodos cria sempre um novo Assembly objeto no seu próprio contexto de carga isolado.
O conjunto é carregado usando as provas fornecidas. Os bytes brutos que representam os símbolos do assembly também são carregados.
Se certas permissões são concedidas ou não a uma assembleia é baseado em evidências. As regras para a fusão de provas de reunião e segurança são as seguintes:
Quando se usa um Load método sem parâmetro Evidence , o conjunto é carregado com a evidência que o carregador fornece.
Quando se usa um Load método com um Evidence parâmetro, partes de evidência são fundidas. As provas fornecidas como argumento para o Load método sobrepõem-se às provas fornecidas pelo carregador.
Quando se usa uma Load sobrecarga de método com um
Byte[]parâmetro para carregar uma imagem COFF, a evidência é herdada da assembleia que chama.Quando se usa um Load método com um
Byte[]parâmetro e Evidence se carrega uma imagem COFF, apenas a evidência fornecida é utilizada. As provas da assembleia do chamado e as provas da imagem COFF são ignoradas.
Se chamar o Load método mais do que uma vez na mesma montagem mas com uma evidência diferente especificada, o runtime da linguagem comum não lança a FileLoadException porque a igualdade e integridade das diferentes especificações de evidência não podem ser determinadas. A evidência que primeiro tem sucesso é a evidência utilizada.
Aplica-se a
Load(String, Evidence)
Atenção
This method is obsolete and will be removed in a future release of the .NET Framework. Please use an overload of Load which does not take an Evidence parameter. See http://go.microsoft.com/fwlink/?LinkID=155570 for more information.
Carrega um conjunto com o seu nome de exibição e usando as provas fornecidas.
public:
static System::Reflection::Assembly ^ Load(System::String ^ assemblyString, System::Security::Policy::Evidence ^ assemblySecurity);
public static System.Reflection.Assembly Load(string assemblyString, System.Security.Policy.Evidence assemblySecurity);
[System.Obsolete("This method is obsolete and will be removed in a future release of the .NET Framework. Please use an overload of Load which does not take an Evidence parameter. See http://go.microsoft.com/fwlink/?LinkID=155570 for more information.")]
public static System.Reflection.Assembly Load(string assemblyString, System.Security.Policy.Evidence assemblySecurity);
static member Load : string * System.Security.Policy.Evidence -> System.Reflection.Assembly
[<System.Obsolete("This method is obsolete and will be removed in a future release of the .NET Framework. Please use an overload of Load which does not take an Evidence parameter. See http://go.microsoft.com/fwlink/?LinkID=155570 for more information.")>]
static member Load : string * System.Security.Policy.Evidence -> System.Reflection.Assembly
Public Shared Function Load (assemblyString As String, assemblySecurity As Evidence) As Assembly
Parâmetros
- assemblyString
- String
O nome de exibição da assembleia.
- assemblySecurity
- Evidence
Provas para carregar a assembleia.
Devoluções
O conjunto carregado.
- Atributos
Exceções
assemblyString é null.
assemblyString não foi encontrado.
assemblyString não é uma assembly válida para o runtime atualmente carregado.
Um ficheiro encontrado não pôde ser carregado.
-ou-
Um conjunto ou módulo foi carregado duas vezes com duas evidências diferentes.
Observações
FileLoadException é lançado se assemblyString especificar o nome completo da assembleia, e a primeira assembleia que corresponde ao nome simples tem uma versão, cultura ou token de chave pública diferente. O carregador não continua a sondar outros conjuntos que correspondam ao nome simples.
Se certas permissões são concedidas ou não a uma assembleia é baseado em evidências. As regras para a fusão de provas de reunião e segurança são as seguintes:
Quando se usa um Load método sem parâmetro Evidence , o conjunto é carregado com a evidência que o carregador fornece.
Quando se usa um Load método com um Evidence parâmetro, partes de evidência são fundidas. As provas fornecidas como argumento para o Load método sobrepõem-se às provas fornecidas pelo carregador.
Quando se usa uma Load sobrecarga de método com um
Byte[]parâmetro para carregar uma imagem em formato de ficheiro de objeto comum (COFF), a evidência é herdada do assembly que chama.Quando se usa um Load método com um
Byte[]parâmetro e Evidence se carrega uma imagem COFF, apenas a evidência fornecida é utilizada. A evidência da assembleia de chamada e a evidência da imagem COFF são ignoradas.
Se chamar este método mais do que uma vez na mesma montagem mas com uma evidência diferente especificada, o runtime da linguagem comum não lança a FileLoadException porque a igualdade e integridade das diferentes especificações de evidência não podem ser determinadas. A evidência que primeiro tem sucesso é a evidência utilizada.
Na versão 2.0 do .NET Framework, a arquitetura do processador é adicionada à identidade de montagem e pode ser especificada como parte das cadeias de nomes de assembly. Por exemplo, "ProcessorArchitecture=msil". No entanto, a forma recomendada de especificar um nome de assembly é criar um AssemblyName objeto e passá-lo para uma sobrecarga apropriada do Load método. Consulte AssemblyName.ProcessorArchitecture.
Ver também
Aplica-se a
Load(Byte[])
Carrega o conjunto com uma imagem baseada em formato de ficheiro objeto comum (COFF) contendo um conjunto emitido.
public:
static System::Reflection::Assembly ^ Load(cli::array <System::Byte> ^ rawAssembly);
public static System.Reflection.Assembly Load(byte[] rawAssembly);
static member Load : byte[] -> System.Reflection.Assembly
Public Shared Function Load (rawAssembly As Byte()) As Assembly
Parâmetros
- rawAssembly
- Byte[]
Um array de bytes que é uma imagem baseada em COFF contendo um conjunto emitido.
Devoluções
O conjunto carregado.
Exceções
rawAssembly é null.
rawAssembly não é uma assembly válida para o runtime atualmente carregado.
Observações
Esta sobrecarga de métodos cria sempre um novo Assembly objeto no seu próprio contexto de carga isolado.
.NET Framework apenas: O nível de confiança de um assembly carregado usando este método é o mesmo que o nível de trust do assembly que chama. Para carregar um assembly a partir de um array de bytes com o nível de confiança do domínio de aplicação, use a Load(Byte[], Byte[], SecurityContextSource) sobrecarga de métodos. Para mais informações sobre o uso de evidências com sobrecargas do Load método que aceitam arrays de bytes, veja sobrecarga Load(Byte[], Byte[], Evidence) de métodos.
Aplica-se a
Load(Byte[], Byte[])
Carrega o conjunto com uma imagem baseada em formato de ficheiro de objeto comum (COFF) contendo um conjunto emitido, incluindo opcionalmente símbolos para o conjunto.
public:
static System::Reflection::Assembly ^ Load(cli::array <System::Byte> ^ rawAssembly, cli::array <System::Byte> ^ rawSymbolStore);
public static System.Reflection.Assembly Load(byte[] rawAssembly, byte[] rawSymbolStore);
static member Load : byte[] * byte[] -> System.Reflection.Assembly
Public Shared Function Load (rawAssembly As Byte(), rawSymbolStore As Byte()) As Assembly
Parâmetros
- rawAssembly
- Byte[]
Um array de bytes que é uma imagem baseada em COFF contendo um conjunto emitido.
- rawSymbolStore
- Byte[]
Um array de bytes que contém os bytes brutos que representam os símbolos para a assembleia.
Devoluções
O conjunto carregado.
Exceções
rawAssembly é null.
rawAssembly não é uma assembly válida para o runtime atualmente carregado.
Observações
No .NET Core/5+, o conjunto alvo é carregado na corrente AssemblyLoadContext. Para mais informações sobre carregamento de montagem, consulte Algoritmo de carregamento de montagem gerido.
Esta sobrecarga de métodos cria sempre um novo Assembly objeto no seu próprio contexto de carga isolado.
.NET Framework apenas: O nível de confiança de um assembly carregado usando este método é o mesmo que o nível de trust do assembly que chama. Para carregar um assembly a partir de um array de bytes com o nível de confiança do domínio de aplicação, use a Load(Byte[], Byte[], SecurityContextSource) sobrecarga de métodos. Para mais informações sobre o uso de evidências com sobrecargas do Load método que aceitam arrays de bytes, veja sobrecarga Load(Byte[], Byte[], Evidence) de métodos.
Aplica-se a
Load(String)
Carrega um assembly com o nome especificado.
public:
static System::Reflection::Assembly ^ Load(System::String ^ assemblyString);
public static System.Reflection.Assembly Load(string assemblyString);
static member Load : string -> System.Reflection.Assembly
Public Shared Function Load (assemblyString As String) As Assembly
Parâmetros
- assemblyString
- String
A forma longa ou curta do nome da assembleia.
Devoluções
O conjunto carregado.
Exceções
assemblyString é null.
assemblyString é uma corda de comprimento zero.
assemblyString não foi encontrado.
Um ficheiro encontrado não pôde ser carregado.
assemblyString não é uma assembly válida para o runtime atualmente carregado.
Exemplos
O exemplo seguinte carrega um conjunto com o seu nome totalmente qualificado e lista todos os tipos contidos no conjunto especificado. Para informações sobre como obter o nome de assembleia totalmente qualificado, consulte Nomes de Assembleia.
using System;
using System.Reflection;
class Class1
{
public static void Main()
{
// You must supply a valid fully qualified assembly name.
Assembly SampleAssembly = Assembly.Load
("SampleAssembly, Version=1.0.2004.0, Culture=neutral, PublicKeyToken=8744b20f8da049e3");
// Display all the types contained in the specified assembly.
foreach (Type oType in SampleAssembly.GetTypes()) {
Console.WriteLine(oType.Name);
}
}
}
Imports System.Reflection
Class Class1
Public Shared Sub Main()
' You must supply a valid fully qualified assembly name.
Dim SampleAssembly As [Assembly] = _
[Assembly].Load("SampleAssembly, Version=1.0.2004.0, Culture=neutral, PublicKeyToken=8744b20f8da049e3")
Dim oType As Type
' Display all the types contained in the specified assembly.
For Each oType In SampleAssembly.GetTypes()
Console.WriteLine(oType.Name)
Next oType
End Sub 'LoadSample
End Class
Observações
Em .NET Core/.NET 5+, o conjunto alvo será carregado na corrente AssemblyLoadContext ou no contexto AssemblyLoadContext.CurrentContextualReflectionContext se estiver definido. Para mais informações sobre carregamento de montagem, consulte Algoritmo de carregamento de montagem gerido.
Para carregar a montagem correta, recomenda-se chamar o Load método passando a forma longa do nome da assembleia. A forma longa de um nome assembly consiste no seu nome simples (como "System" para a assembly System.dll) juntamente com a sua versão, cultura, token de chave pública e, opcionalmente, a sua arquitetura de processador. Corresponde à propriedade da FullName assembleia. O exemplo seguinte ilustra o uso de um nome longo para carregar o assembly System.dll para .NET Framework 4:
using System;
using System.Reflection;
public class Example
{
public static void Main()
{
string longName = "system, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089";
Assembly assem = Assembly.Load(longName);
if (assem == null)
Console.WriteLine("Unable to load assembly...");
else
Console.WriteLine(assem.FullName);
}
}
// The example displays the following output:
// system, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
Imports System.Reflection
Module Example
Public Sub Main()
Dim longName As String = "system, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"
Dim assem As Assembly = Assembly.Load(longName)
If assem Is Nothing Then
Console.WriteLine("Unable to load assembly...")
Else
Console.WriteLine(assem.FullName)
End If
End Sub
End Module
' The example displays the following output:
' system, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
FileLoadException é lançado se assemblyString especificar o nome completo da assembleia, e a primeira assembleia que corresponde ao nome simples tem uma versão, cultura ou token de chave pública diferente. O carregador não continua a sondar outros conjuntos que correspondam ao nome simples.
Na versão 2.0 do .NET Framework, a arquitetura do processador é adicionada à identidade de montagem e pode ser especificada como parte das cadeias de nomes de assembly. Por exemplo, "ProcessorArchitecture=msil". No entanto, a forma recomendada de especificar um nome de assembly é criar um AssemblyName objeto e passá-lo para uma sobrecarga apropriada do Load método. Consulte AssemblyName.ProcessorArchitecture.
Ver também
Aplica-se a
Load(AssemblyName, Evidence)
Atenção
This method is obsolete and will be removed in a future release of the .NET Framework. Please use an overload of Load which does not take an Evidence parameter. See http://go.microsoft.com/fwlink/?LinkID=155570 for more information.
Carrega um assembly dado o seu AssemblyName. O conjunto é carregado usando as provas fornecidas.
public:
static System::Reflection::Assembly ^ Load(System::Reflection::AssemblyName ^ assemblyRef, System::Security::Policy::Evidence ^ assemblySecurity);
public static System.Reflection.Assembly Load(System.Reflection.AssemblyName assemblyRef, System.Security.Policy.Evidence assemblySecurity);
[System.Obsolete("This method is obsolete and will be removed in a future release of the .NET Framework. Please use an overload of Load which does not take an Evidence parameter. See http://go.microsoft.com/fwlink/?LinkID=155570 for more information.")]
public static System.Reflection.Assembly Load(System.Reflection.AssemblyName assemblyRef, System.Security.Policy.Evidence assemblySecurity);
static member Load : System.Reflection.AssemblyName * System.Security.Policy.Evidence -> System.Reflection.Assembly
[<System.Obsolete("This method is obsolete and will be removed in a future release of the .NET Framework. Please use an overload of Load which does not take an Evidence parameter. See http://go.microsoft.com/fwlink/?LinkID=155570 for more information.")>]
static member Load : System.Reflection.AssemblyName * System.Security.Policy.Evidence -> System.Reflection.Assembly
Public Shared Function Load (assemblyRef As AssemblyName, assemblySecurity As Evidence) As Assembly
Parâmetros
- assemblyRef
- AssemblyName
O objeto que descreve a montagem a ser carregada.
- assemblySecurity
- Evidence
Provas para carregar a assembleia.
Devoluções
O conjunto carregado.
- Atributos
Exceções
assemblyRef é null.
assemblyRef não foi encontrado.
assemblyRef não é uma assembly válida para o runtime atualmente carregado.
Um conjunto ou módulo foi carregado duas vezes com duas evidências diferentes.
-ou-
assemblyRef especifica um local que está desativado com base no <loadFromRemoteSources>.
Observações
FileLoadException é lançado se assemblyRef especificar o nome completo da assembleia, e a primeira assembleia que corresponde ao nome simples tem uma versão, cultura ou token de chave pública diferente. O carregador não continua a sondar outros conjuntos que correspondam ao nome simples.
Veja <loadFromRemoteSources> para carregar conjuntos a partir de locais remotos.
Note
Não use um AssemblyName apenas com as CodeBase propriedades definidas. A CodeBase propriedade não fornece quaisquer elementos da identidade assembly (como nome ou versão), pelo que o carregamento não ocorre de acordo com as regras load-by-identity, como seria de esperar do Load método. Em vez disso, o assembly é carregado usando regras load-from. Para informações sobre as desvantagens de usar o contexto load-from, consulte sobrecarga Assembly.LoadFrom de métodos ou Melhores Práticas para Carregamento de Montagem.
Se certas permissões são concedidas ou não a uma assembleia é baseado em evidências. As regras para a fusão de provas de reunião e segurança são as seguintes:
Quando se usa um Load método sem parâmetro Evidence , o conjunto é carregado com a evidência que o carregador fornece.
Quando se usa um Load método com um Evidence parâmetro, partes de evidência são fundidas. As provas fornecidas como argumento para o Load método sobrepõem-se às provas fornecidas pelo carregador.
Quando se usa uma Load sobrecarga de método com um
Byte[]parâmetro para carregar uma imagem em formato de ficheiro de objeto comum (COFF), a evidência é herdada do assembly que chama.Quando se usa um Load método com um
Byte[]parâmetro e Evidence se carrega uma imagem COFF, apenas a evidência fornecida é utilizada. A evidência da assembleia de chamada e a evidência da imagem COFF são ignoradas.
Note
Se tanto a AssemblyName.Name propriedade como a AssemblyName.CodeBase propriedade estiverem definidas, a primeira tentativa de carregar a assembly usa o nome de exibição (incluindo versão, cultura, e assim sucessivamente, conforme devolvido pela Assembly.FullName propriedade). Se o ficheiro não for encontrado, CodeBase é usado para procurar a assembleia. Se a montagem for encontrada usando CodeBase, o nome de exibição é comparado com o conjunto. Se a correspondência falhar, é lançado a.FileLoadException
Se chamar o Load método mais do que uma vez na mesma montagem mas com uma evidência diferente especificada, o runtime da linguagem comum não lança a FileLoadException porque a igualdade e integridade das diferentes especificações de evidência não podem ser determinadas. A evidência que primeiro tem sucesso é a evidência utilizada.