Sdílet prostřednictvím


Assembly.Load Metoda

Definice

Načte sestavení.

Přetížení

Name Description
Load(Byte[], Byte[], SecurityContextSource)

Načte sestavení s běžným formátem souboru objektu (COFF) obsahující vygenerované sestavení, volitelně včetně symbolů a určení zdroje pro kontext zabezpečení.

Load(Byte[], Byte[], Evidence)
Zastaralé.

Načte sestavení s běžným formátem souboru objektu (COFF) obsahující vygenerované sestavení, volitelně včetně symbolů a důkazů pro sestavení.

Load(String, Evidence)
Zastaralé.

Načte sestavení s daným zobrazovaným názvem a použije dodané důkazy.

Load(AssemblyName, Evidence)
Zastaralé.

Načte sestavení vzhledem k jeho AssemblyName. Sestavení se načte pomocí zadaných důkazů.

Load(Byte[])

Načte sestavení s běžným formátem souboru objektu (COFF) obsahující generované sestavení.

Load(String)

Načte sestavení se zadaným názvem.

Load(AssemblyName)

Načte sestavení vzhledem k jeho AssemblyName.

Load(Byte[], Byte[])

Načte sestavení s běžným formátem souboru objektu (COFF) obsahující vygenerované sestavení, volitelně včetně symbolů sestavení.

Load(Byte[], Byte[], SecurityContextSource)

Načte sestavení s běžným formátem souboru objektu (COFF) obsahující vygenerované sestavení, volitelně včetně symbolů a určení zdroje pro kontext zabezpečení.

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

Parametry

rawAssembly
Byte[]

Bajtové pole, které je image založená na COFF obsahující generované sestavení.

rawSymbolStore
Byte[]

Bajtové pole, které obsahuje nezpracované bajty představující symboly sestavení.

securityContextSource
SecurityContextSource

Zdroj kontextu zabezpečení.

Návraty

Načtené sestavení.

Výjimky

rawAssembly je null.

rawAssembly není platné sestavení pro aktuálně načtený modul runtime.

Hodnota securityContextSource není jednou z hodnot výčtu.

Poznámky

Sestavení se načte do domény aplikace volajícího pomocí zadaného zdroje kontextu zabezpečení. Pokud rawSymbolStore bylo zadáno, načtou se také nezpracované bajty, které představují symboly sestavení.

Platí pro

Load(Byte[], Byte[], Evidence)

Upozornění

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.

Načte sestavení s běžným formátem souboru objektu (COFF) obsahující vygenerované sestavení, volitelně včetně symbolů a důkazů pro sestavení.

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

Parametry

rawAssembly
Byte[]

Bajtové pole, které je image založená na COFF obsahující generované sestavení.

rawSymbolStore
Byte[]

Bajtové pole, které obsahuje nezpracované bajty představující symboly sestavení.

securityEvidence
Evidence

Důkaz pro načtení sestavení.

Návraty

Načtené sestavení.

Atributy

Výjimky

rawAssembly je null.

rawAssembly není platné sestavení pro aktuálně načtený modul runtime.

Sestavení nebo modul byl načten dvakrát se dvěma různými důkazy.

securityEvidence není null. Ve výchozím nastavení nejsou starší zásady CAS povolené v rozhraní .NET Framework 4; pokud není povolen, securityEvidence musí být null.

Poznámky

Toto přetížení metody vždy vytvoří nový Assembly objekt ve vlastním izolovaném kontextu zatížení.

Sestavení se načte pomocí zadaných důkazů. Načtou se také nezpracované bajty představující symboly sestavení.

Zda jsou určitá oprávnění udělena nebo neudělena sestavení, je založeno na důkazech. Pravidla pro sloučení důkazů o sestavení a zabezpečení jsou následující:

  • Pokud použijete metodu Load bez Evidence parametru, sestavení se načte důkazem, že zavaděč dodává.

  • Při použití metody s parametrem LoadEvidence se sloučí části důkazů. Důkazy poskytnuté jako argument metody Load nahrazují části důkazů dodané zavaděčem.

  • Pokud použijete Load přetížení metody s parametrem Byte[] k načtení image COFF, zdědí se důkazy z volajícího sestavení.

  • Pokud použijete metodu Load s parametrem Byte[] a Evidence k načtení image COFF, použije se pouze zadaný důkaz. Důkazy o volajícím sestavení a důkazu image COFF jsou ignorovány.

Pokud voláte metodu Load více než jednou ve stejném sestavení, ale s odlišnými důkazy zadanými důkazy, modul CLR vyvolá FileLoadException výjimku, protože rovnost a integrita různých specifikací důkazů nelze určit. Důkazem, že první úspěch je důkaz, který se používá.

Platí pro

Load(String, Evidence)

Upozornění

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.

Načte sestavení s daným zobrazovaným názvem a použije dodané důkazy.

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

Parametry

assemblyString
String

Zobrazovaný název sestavení.

assemblySecurity
Evidence

Důkaz pro načtení sestavení.

Návraty

Načtené sestavení.

Atributy

Výjimky

assemblyString je null.

assemblyString nebyl nalezen.

assemblyString není platné sestavení pro aktuálně načtený modul runtime.

Nalezený soubor nelze načíst.

nebo

Sestavení nebo modul byl načten dvakrát se dvěma různými důkazy.

Poznámky

FileLoadException je vyvolán, pokud assemblyString určuje úplný název sestavení a první sestavení, které odpovídá jednoduchému názvu, má jinou verzi, jazykovou verzi nebo token veřejného klíče. Zavaděč nebude pokračovat ve zbídání pro jiná sestavení, která odpovídají jednoduchému názvu.

Zda jsou určitá oprávnění udělena nebo neudělena sestavení, je založeno na důkazech. Pravidla pro sloučení důkazů o sestavení a zabezpečení jsou následující:

  • Pokud použijete metodu Load bez Evidence parametru, sestavení se načte důkazem, že zavaděč dodává.

  • Při použití metody s parametrem LoadEvidence se sloučí části důkazů. Důkazy poskytnuté jako argument metody Load nahrazují části důkazů dodané zavaděčem.

  • Pokud použijete Load přetížení metody s parametrem Byte[] k načtení běžného obrázku formátu souboru objektu (COFF), zdědí se důkazy z volajícího sestavení.

  • Pokud použijete metodu Load s parametrem Byte[] a Evidence k načtení image COFF, použije se pouze zadaný důkaz. Důkazy o volajícím sestavení a důkazu image COFF jsou ignorovány.

Pokud tuto metodu zavoláte více než jednou ve stejném sestavení, ale s jiným důkazem zadaným, modul CLR (Common Language Runtime) vyvolá FileLoadException výjimku, protože nelze určit rovnost a integritu různých specifikací důkazů. Důkazem, že první úspěch je důkaz, který se používá.

V rozhraní .NET Framework verze 2.0 je architektura procesoru přidána k identitě sestavení a lze ji zadat jako součást řetězců názvů sestavení. Například "ProcessorArchitecture=msil". Doporučeným způsobem, jak zadat název sestavení, je však vytvořit AssemblyName objekt a předat ho příslušné přetížení Load metody. Viz AssemblyName.ProcessorArchitecture.

Viz také

Platí pro

Load(AssemblyName, Evidence)

Upozornění

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.

Načte sestavení vzhledem k jeho AssemblyName. Sestavení se načte pomocí zadaných důkazů.

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

Parametry

assemblyRef
AssemblyName

Objekt, který popisuje sestavení, které má být načteno.

assemblySecurity
Evidence

Důkaz pro načtení sestavení.

Návraty

Načtené sestavení.

Atributy

Výjimky

assemblyRef je null.

assemblyRef nebyl nalezen.

assemblyRef není platné sestavení pro aktuálně načtený modul runtime.

Sestavení nebo modul byl načten dvakrát se dvěma různými důkazy.

nebo

assemblyRef určuje umístění, které je zakázáno na <základě loadFromRemoteSources>.

Poznámky

FileLoadException je vyvolán, pokud assemblyRef určuje úplný název sestavení a první sestavení, které odpovídá jednoduchému názvu, má jinou verzi, jazykovou verzi nebo token veřejného klíče. Zavaděč nebude pokračovat ve zbídání pro jiná sestavení, která odpovídají jednoduchému názvu.

Viz <loadFromRemoteSources> načítání sestavení ze vzdálených umístění.

Poznámka:

Nepoužívejte pouze se AssemblyNameCodeBase sadou vlastností. Vlastnost CodeBase neposkytuje žádné prvky identity sestavení (například název nebo verze), takže načítání neproběhne podle pravidel načtení podle identity, jak byste očekávali od Load metody. Místo toho se sestavení načte pomocí pravidel načítání. Informace o nevýhodách použití kontextu při načítání z kontextu naleznete v Assembly.LoadFrom přetížení metody nebo osvědčené postupy pro načítání sestavení.

Zda jsou určitá oprávnění udělena nebo neudělena sestavení, je založeno na důkazech. Pravidla pro sloučení důkazů o sestavení a zabezpečení jsou následující:

  • Pokud použijete metodu Load bez Evidence parametru, sestavení se načte důkazem, že zavaděč dodává.

  • Při použití metody s parametrem LoadEvidence se sloučí části důkazů. Důkazy poskytnuté jako argument metody Load nahrazují části důkazů dodané zavaděčem.

  • Pokud použijete Load přetížení metody s parametrem Byte[] k načtení běžného obrázku formátu souboru objektu (COFF), zdědí se důkazy z volajícího sestavení.

  • Pokud použijete metodu Load s parametrem Byte[] a Evidence k načtení image COFF, použije se pouze zadaný důkaz. Důkazy o volajícím sestavení a důkazu image COFF jsou ignorovány.

Poznámka:

AssemblyName.Name Pokud je vlastnost i AssemblyName.CodeBase vlastnost nastavena, první pokus o načtení sestavení použije zobrazovaný název (včetně verze, jazykové verze atd.), jak je vráceno Assembly.FullName vlastností). Pokud soubor nebyl nalezen, CodeBase slouží k vyhledání sestavení. Pokud se sestavení najde pomocí CodeBase, zobrazí se zobrazovaný název shodný s sestavením. Pokud se shoda nezdaří, FileLoadException vyvolá se výjimka.

Pokud voláte metodu Load více než jednou ve stejném sestavení, ale s odlišnými důkazy zadanými důkazy, modul CLR vyvolá FileLoadException výjimku, protože rovnost a integrita různých specifikací důkazů nelze určit. Důkazem, že první úspěch je důkaz, který se používá.

Viz také

Platí pro

Load(Byte[])

Zdroj:
Assembly.cs
Zdroj:
Assembly.cs
Zdroj:
Assembly.cs
Zdroj:
Assembly.cs
Zdroj:
Assembly.cs

Načte sestavení s běžným formátem souboru objektu (COFF) obsahující generované sestavení.

public:
 static System::Reflection::Assembly ^ Load(cli::array <System::Byte> ^ rawAssembly);
[System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("Types and members the loaded assembly depends on might be removed")]
public static System.Reflection.Assembly Load(byte[] rawAssembly);
public static System.Reflection.Assembly Load(byte[] rawAssembly);
[<System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("Types and members the loaded assembly depends on might be removed")>]
static member Load : byte[] -> System.Reflection.Assembly
static member Load : byte[] -> System.Reflection.Assembly
Public Shared Function Load (rawAssembly As Byte()) As Assembly

Parametry

rawAssembly
Byte[]

Bajtové pole, které je image založená na COFF obsahující generované sestavení.

Návraty

Načtené sestavení.

Atributy

Výjimky

rawAssembly je null.

rawAssembly není platné sestavení pro aktuálně načtený modul runtime.

Poznámky

Toto přetížení metody vždy vytvoří nový Assembly objekt ve vlastním izolovaném kontextu zatížení.

Pouze rozhraní .NET Framework: Úroveň důvěryhodnosti sestavení načteného pomocí této metody je stejná jako úroveň důvěryhodnosti volajícího sestavení. Chcete-li načíst sestavení z pole bajtů s úrovní důvěryhodnosti domény aplikace, použijte Load(Byte[], Byte[], SecurityContextSource) přetížení metody. Další informace o použití důkazů s přetížením Load metody, která vezme bajt pole, naleznete v Load(Byte[], Byte[], Evidence) přetížení metody.

Platí pro

Load(String)

Zdroj:
Assembly.CoreCLR.cs
Zdroj:
Assembly.CoreCLR.cs
Zdroj:
Assembly.CoreCLR.cs
Zdroj:
Assembly.CoreCLR.cs
Zdroj:
Assembly.CoreCLR.cs

Načte sestavení se zadaným názvem.

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

Parametry

assemblyString
String

Dlouhý nebo krátký tvar názvu sestavení.

Návraty

Načtené sestavení.

Výjimky

assemblyString je null.

assemblyString je řetězec nulové délky.

assemblyString nebyl nalezen.

Nalezený soubor nelze načíst.

assemblyString není platné sestavení pro aktuálně načtený modul runtime.

Příklady

Následující příklad načte sestavení s plně kvalifikovaným názvem a zobrazí seznam všech typů obsažených v zadaném sestavení. Informace o získání plně kvalifikovaného názvu sestavení naleznete v tématu Názvy sestavení.

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

Poznámky

V .NET Core/.NET 5+ se cílové sestavení načte do aktuálního AssemblyLoadContext nebo do AssemblyLoadContext.CurrentContextualReflectionContext kontextu, pokud je nastavené. Další informace o načítání sestavení naleznete v tématu Spravovaný algoritmus načítání sestavení.

Chcete-li načíst správné sestavení, doporučuje se volat Load metodu předáním dlouhého formátu názvu sestavení. Dlouhá forma názvu sestavení se skládá z jeho jednoduchého názvu (například "Systém" pro sestavení System.dll) spolu s jeho verzí, jazykovou verzí, tokenem veřejného klíče a volitelně i s architekturou procesoru. Odpovídá vlastnosti sestavení FullName . Následující příklad ukazuje použití dlouhého názvu k načtení System.dll sestavení pro rozhraní .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 je vyvolán, pokud assemblyString určuje úplný název sestavení a první sestavení, které odpovídá jednoduchému názvu, má jinou verzi, jazykovou verzi nebo token veřejného klíče. Zavaděč nebude pokračovat ve zbídání pro jiná sestavení, která odpovídají jednoduchému názvu.

V rozhraní .NET Framework verze 2.0 je architektura procesoru přidána k identitě sestavení a lze ji zadat jako součást řetězců názvů sestavení. Například "ProcessorArchitecture=msil". Doporučeným způsobem, jak zadat název sestavení, je však vytvořit AssemblyName objekt a předat ho příslušné přetížení Load metody. Viz AssemblyName.ProcessorArchitecture.

Viz také

Platí pro

Load(AssemblyName)

Zdroj:
Assembly.CoreCLR.cs
Zdroj:
Assembly.CoreCLR.cs
Zdroj:
Assembly.CoreCLR.cs
Zdroj:
Assembly.CoreCLR.cs
Zdroj:
Assembly.CoreCLR.cs

Načte sestavení vzhledem k jeho 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

Parametry

assemblyRef
AssemblyName

Objekt, který popisuje sestavení, které má být načteno.

Návraty

Načtené sestavení.

Výjimky

assemblyRef je null.

assemblyRef nebyl nalezen.

Nalezený soubor nelze načíst.

nebo

Pouze rozhraní .NET Framework: assemblyRef Určuje umístění, které je zakázáno na <základě loadFromRemoteSources>.

Poznámka: V .NET pro aplikace pro Windows Store nebo v přenosné knihovně tříd zachyťte výjimku základní třídy , místo IOExceptiontoho.

assemblyRef není platné sestavení pro aktuálně načtený modul runtime.

Příklady

Následující příklad vytvoří instanci objektu AssemblyName a použije ho sysglobal.dll k načtení sestavení. Příklad pak zobrazí úplný název veřejných typů sestavení.

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

Poznámky

V .NET Core/.NET 5+ se cílové sestavení načte do aktuálního AssemblyLoadContext nebo do AssemblyLoadContext.CurrentContextualReflectionContext kontextu, pokud je nastavené. Další informace o načítání sestavení naleznete v tématu Spravovaný algoritmus načítání sestavení.

Poznámka:

Pouze rozhraní .NET Framework: Informace o načítání sestavení ze vzdálených umístění naleznete v tématu <loadFromRemoteSources>.

Poznámka:

Pouze rozhraní .NET Framework: Nepoužívejte pouze se AssemblyNameCodeBase sadou vlastností. Vlastnost CodeBase neposkytuje žádné prvky identity sestavení (například název nebo verze), takže načítání neproběhne podle pravidel načtení podle identity, jak byste očekávali od Load metody. Místo toho se sestavení načte pomocí pravidel načítání. Informace o nevýhodách použití kontextu při načítání z kontextu naleznete v Assembly.LoadFrom přetížení metody nebo osvědčené postupy pro načítání sestavení.

Poznámka:

Pouze rozhraní .NET Framework:AssemblyName.Name Pokud je vlastnost i AssemblyName.CodeBase vlastnost nastavena, první pokus o načtení sestavení použije zobrazovaný název (včetně verze, jazykové verze atd.), jak je vráceno Assembly.FullName vlastností). Pokud soubor nebyl nalezen, CodeBase slouží k vyhledání sestavení. Pokud se sestavení najde pomocí CodeBase, zobrazí se zobrazovaný název shodný s sestavením. Pokud se shoda nezdaří, FileLoadException vyvolá se výjimka.

Viz také

Platí pro

Load(Byte[], Byte[])

Zdroj:
Assembly.cs
Zdroj:
Assembly.cs
Zdroj:
Assembly.cs
Zdroj:
Assembly.cs
Zdroj:
Assembly.cs

Načte sestavení s běžným formátem souboru objektu (COFF) obsahující vygenerované sestavení, volitelně včetně symbolů sestavení.

public:
 static System::Reflection::Assembly ^ Load(cli::array <System::Byte> ^ rawAssembly, cli::array <System::Byte> ^ rawSymbolStore);
[System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("Types and members the loaded assembly depends on might be removed")]
public static System.Reflection.Assembly Load(byte[] rawAssembly, byte[]? rawSymbolStore);
public static System.Reflection.Assembly Load(byte[] rawAssembly, byte[] rawSymbolStore);
public static System.Reflection.Assembly Load(byte[] rawAssembly, byte[]? rawSymbolStore);
[<System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("Types and members the loaded assembly depends on might be removed")>]
static member Load : byte[] * byte[] -> System.Reflection.Assembly
static member Load : byte[] * byte[] -> System.Reflection.Assembly
Public Shared Function Load (rawAssembly As Byte(), rawSymbolStore As Byte()) As Assembly

Parametry

rawAssembly
Byte[]

Bajtové pole, které je image založená na COFF obsahující generované sestavení.

rawSymbolStore
Byte[]

Bajtové pole, které obsahuje nezpracované bajty představující symboly sestavení.

Návraty

Načtené sestavení.

Atributy

Výjimky

rawAssembly je null.

rawAssembly není platné sestavení pro aktuálně načtený modul runtime.

Poznámky

V .NET Core/5+ je cílové sestavení načteno do aktuálního AssemblyLoadContext. Další informace o načítání sestavení naleznete v tématu Spravovaný algoritmus načítání sestavení.

Toto přetížení metody vždy vytvoří nový Assembly objekt ve vlastním izolovaném kontextu zatížení.

Pouze rozhraní .NET Framework: Úroveň důvěryhodnosti sestavení načteného pomocí této metody je stejná jako úroveň důvěryhodnosti volajícího sestavení. Chcete-li načíst sestavení z pole bajtů s úrovní důvěryhodnosti domény aplikace, použijte Load(Byte[], Byte[], SecurityContextSource) přetížení metody. Další informace o použití důkazů s přetížením Load metody, která vezme bajt pole, naleznete v Load(Byte[], Byte[], Evidence) přetížení metody.

Platí pro