Поделиться через


Assembly.Load Метод

Определение

Загружает сборку.

Перегрузки

Имя Описание
Load(Byte[], Byte[], SecurityContextSource)

Загружает сборку с общим форматом файлов объектов (COFF), содержащим созданную сборку, при необходимости включая символы и указывая источник для контекста безопасности.

Load(Byte[], Byte[], Evidence)
Устаревшие..

Загружает сборку с общим форматом файлов объектов (COFF), содержащим созданную сборку, при необходимости включая символы и доказательства для сборки.

Load(String, Evidence)
Устаревшие..

Загружает сборку с отображаемым именем и используя предоставленные доказательства.

Load(AssemblyName, Evidence)
Устаревшие..

Загружает сборку, указанную в ней AssemblyName. Сборка загружается с помощью предоставленного доказательства.

Load(Byte[])

Загружает сборку с общим форматом файлов объектов (COFF), содержащим созданную сборку.

Load(String)

Загружает сборку с указанным именем.

Load(AssemblyName)

Загружает сборку, указанную в ней AssemblyName.

Load(Byte[], Byte[])

Загружает сборку с общим форматом файлов объектов (COFF), содержащим созданную сборку, при необходимости включая символы для сборки.

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

Загружает сборку с общим форматом файлов объектов (COFF), содержащим созданную сборку, при необходимости включая символы и указывая источник для контекста безопасности.

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

Параметры

rawAssembly
Byte[]

Массив байтов, представляющий собой образ на основе COFF, содержащий созданную сборку.

rawSymbolStore
Byte[]

Массив байтов, содержащий необработанные байты, представляющие символы сборки.

securityContextSource
SecurityContextSource

Источник контекста безопасности.

Возвращаемое значение

Загруженная сборка.

Исключения

rawAssembly равно null.

rawAssembly не является допустимой сборкой для текущей загруженной среды выполнения.

Значение securityContextSource не является одним из значений перечисления.

Комментарии

Сборка загружается в домен приложения вызывающего объекта с помощью указанного источника для контекста безопасности. Если rawSymbolStore задано, необработанные байты, представляющие символы сборки, также загружаются.

Применяется к

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

Внимание

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.

Загружает сборку с общим форматом файлов объектов (COFF), содержащим созданную сборку, при необходимости включая символы и доказательства для сборки.

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

Параметры

rawAssembly
Byte[]

Массив байтов, представляющий собой образ на основе COFF, содержащий созданную сборку.

rawSymbolStore
Byte[]

Массив байтов, содержащий необработанные байты, представляющие символы сборки.

securityEvidence
Evidence

Доказательства загрузки сборки.

Возвращаемое значение

Загруженная сборка.

Атрибуты

Исключения

rawAssembly равно null.

rawAssembly не является допустимой сборкой для текущей загруженной среды выполнения.

Сборка или модуль была загружена дважды с двумя разными доказательствами.

securityEvidence не nullявляется . По умолчанию устаревшая политика CAS не включена в .NET Framework 4; Если оно не включено, securityEvidence должно быть null.

Комментарии

Эта перегрузка метода всегда создает новый Assembly объект в собственном изолированном контексте загрузки.

Сборка загружается с помощью предоставленного доказательства. Необработанные байты, представляющие символы сборки, также загружаются.

Предоставляются ли определенные разрешения сборке или не предоставляются на основе доказательств. Правила объединения доказательств сборки и безопасности приведены следующим образом:

  • При использовании Load метода без Evidence параметра сборка загружается с свидетельством того, что загрузчик поставляет.

  • При использовании метода с параметром LoadEvidence объединяются фрагменты доказательств. Фрагменты доказательств, предоставленных в качестве аргумента Load для метода, заменяют фрагменты доказательств, предоставленных загрузчиком.

  • При использовании перегрузки метода с параметром LoadByte[] для загрузки образа COFF доказательства наследуются от вызывающей сборки.

  • При использовании метода с параметром LoadByte[] и Evidence загрузки изображения COFF используются только предоставленные доказательства. Доказательства вызываемой сборки и доказательства изображения COFF игнорируются.

При вызове Load метода более одного раза в одной сборке, но с другим доказательством, среда CLR не создает FileLoadException исключение, так как равенство и целостность различных спецификаций доказательств невозможно определить. Доказательства того, что в первую очередь успешно, являются доказательствами, которые используются.

Применяется к

Load(String, Evidence)

Внимание

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::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

Параметры

assemblyString
String

Отображаемое имя сборки.

assemblySecurity
Evidence

Доказательства загрузки сборки.

Возвращаемое значение

Загруженная сборка.

Атрибуты

Исключения

assemblyString равно null.

assemblyString не найден.

assemblyString не является допустимой сборкой для текущей загруженной среды выполнения.

Не удалось загрузить файл, который был найден.

–или–

Сборка или модуль была загружена дважды с двумя разными доказательствами.

Комментарии

FileLoadException Вызывается, если assemblyString указано полное имя сборки, а первая сборка, которая соответствует простому имени, имеет другую версию, язык и региональные параметры или маркер открытого ключа. Загрузчик не продолжает пробовать другие сборки, соответствующие простому имени.

Предоставляются ли определенные разрешения сборке или не предоставляются на основе доказательств. Правила объединения доказательств сборки и безопасности приведены следующим образом:

  • При использовании Load метода без Evidence параметра сборка загружается с свидетельством того, что загрузчик поставляет.

  • При использовании метода с параметром LoadEvidence объединяются фрагменты доказательств. Фрагменты доказательств, предоставленных в качестве аргумента Load для метода, заменяют фрагменты доказательств, предоставленных загрузчиком.

  • При использовании перегрузки метода с Byte[] параметром Load для загрузки изображения общего формата файлов объектов (COFF) доказательства наследуются от вызывающей сборки.

  • При использовании метода с параметром LoadByte[] и Evidence загрузки изображения COFF используются только предоставленные доказательства. Доказательства вызываемой сборки и доказательства изображения COFF игнорируются.

Если этот метод вызывается несколько раз в одной сборке, но с другим свидетельством, то среда CLR не создает FileLoadException исключение, поскольку невозможно определить равенство и целостность различных спецификаций доказательств. Доказательства того, что в первую очередь успешно, являются доказательствами, которые используются.

В .NET Framework версии 2.0 архитектура процессора добавляется в удостоверение сборки и может быть указана как часть строк имени сборки. Например, "ProcessorArchitecture=msil". Однако рекомендуемый способ указать имя сборки — создать AssemblyName объект и передать его в соответствующую перегрузку Load метода. См. AssemblyName.ProcessorArchitecture.

См. также раздел

Применяется к

Load(AssemblyName, Evidence)

Внимание

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.

Загружает сборку, указанную в ней AssemblyName. Сборка загружается с помощью предоставленного доказательства.

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

Параметры

assemblyRef
AssemblyName

Объект, описывающий загрузку сборки.

assemblySecurity
Evidence

Доказательства загрузки сборки.

Возвращаемое значение

Загруженная сборка.

Атрибуты

Исключения

assemblyRef равно null.

assemblyRef не найден.

assemblyRef не является допустимой сборкой для текущей загруженной среды выполнения.

Сборка или модуль была загружена дважды с двумя разными доказательствами.

–или–

assemblyRef указывает расположение, которое отключено на <основе loadFromRemoteSources>.

Комментарии

FileLoadException Вызывается, если assemblyRef указано полное имя сборки, а первая сборка, которая соответствует простому имени, имеет другую версию, язык и региональные параметры или маркер открытого ключа. Загрузчик не продолжает пробовать другие сборки, соответствующие простому имени.

Сведения <loadFromRemoteSources> о загрузке сборок из удаленных расположений.

Замечание

Не используйте AssemblyName только CodeBase набор свойств. Свойство CodeBase не предоставляет никакие элементы удостоверения сборки (например, имя или версия), поэтому загрузка не выполняется в соответствии с правилами удостоверений по нагрузке, так как вы ожидаете от Load метода. Вместо этого сборка загружается с помощью правил загрузки. Сведения о недостатках использования контекста загрузки см. в перегрузке Assembly.LoadFrom метода или рекомендациях по загрузке сборок.

Предоставляются ли определенные разрешения сборке или не предоставляются на основе доказательств. Правила объединения доказательств сборки и безопасности приведены следующим образом:

  • При использовании Load метода без Evidence параметра сборка загружается с свидетельством того, что загрузчик поставляет.

  • При использовании метода с параметром LoadEvidence объединяются фрагменты доказательств. Фрагменты доказательств, предоставленных в качестве аргумента Load для метода, заменяют фрагменты доказательств, предоставленных загрузчиком.

  • При использовании перегрузки метода с Byte[] параметром Load для загрузки изображения общего формата файлов объектов (COFF) доказательства наследуются от вызывающей сборки.

  • При использовании метода с параметром LoadByte[] и Evidence загрузки изображения COFF используются только предоставленные доказательства. Доказательства вызываемой сборки и доказательства изображения COFF игнорируются.

Замечание

AssemblyName.Name Если задано свойство и AssemblyName.CodeBase свойство, первая попытка загрузить сборку использует отображаемое имя (включая версию, язык и региональные параметры и т. д.), возвращаемое свойствомAssembly.FullName. Если файл не найден, CodeBase используется для поиска сборки. Если сборка найдена с помощью CodeBase, отображаемое имя соответствует сборке. Если совпадение завершается ошибкой FileLoadException , создается исключение.

При вызове Load метода более одного раза в одной сборке, но с другим доказательством, среда CLR не создает FileLoadException исключение, так как равенство и целостность различных спецификаций доказательств невозможно определить. Доказательства того, что в первую очередь успешно, являются доказательствами, которые используются.

См. также раздел

Применяется к

Load(Byte[])

Исходный код:
Assembly.cs
Исходный код:
Assembly.cs
Исходный код:
Assembly.cs
Исходный код:
Assembly.cs
Исходный код:
Assembly.cs

Загружает сборку с общим форматом файлов объектов (COFF), содержащим созданную сборку.

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

Параметры

rawAssembly
Byte[]

Массив байтов, представляющий собой образ на основе COFF, содержащий созданную сборку.

Возвращаемое значение

Загруженная сборка.

Атрибуты

Исключения

rawAssembly равно null.

rawAssembly не является допустимой сборкой для текущей загруженной среды выполнения.

Комментарии

Эта перегрузка метода всегда создает новый Assembly объект в собственном изолированном контексте загрузки.

Только .NET Framework: Уровень доверия сборки, загруженной с помощью этого метода, совпадает с уровнем доверия вызывающей сборки. Чтобы загрузить сборку из массива байтов с уровнем доверия домена приложения, используйте перегрузку Load(Byte[], Byte[], SecurityContextSource) метода. Дополнительные сведения об использовании доказательств с перегрузками Load метода, который принимает массивы байтов, см. в перегрузке Load(Byte[], Byte[], Evidence) метода.

Применяется к

Load(String)

Исходный код:
Assembly.CoreCLR.cs
Исходный код:
Assembly.CoreCLR.cs
Исходный код:
Assembly.CoreCLR.cs
Исходный код:
Assembly.CoreCLR.cs
Исходный код:
Assembly.CoreCLR.cs

Загружает сборку с указанным именем.

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

Параметры

assemblyString
String

Длинная или короткая форма имени сборки.

Возвращаемое значение

Загруженная сборка.

Исключения

assemblyString равно null.

assemblyString — строка нулевой длины.

assemblyString не найден.

Не удалось загрузить файл, который был найден.

assemblyString не является допустимой сборкой для текущей загруженной среды выполнения.

Примеры

В следующем примере загружается сборка с полным именем и перечисляются все типы, содержащиеся в указанной сборке. Сведения о том, как получить полное имя сборки, см. в разделе "Имена сборок".

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

Комментарии

В .NET Core/.NET 5+ целевая сборка будет загружена в текущий AssemblyLoadContext или в AssemblyLoadContext.CurrentContextualReflectionContext контекст, если он задан. Дополнительные сведения о загрузке сборок см. в разделе "Алгоритм загрузки управляемой сборки".

Чтобы загрузить правильную сборку, рекомендуется вызвать Load метод, передав длинную форму имени сборки. Длинная форма имени сборки состоит из его простого имени (например, System для сборки System.dll) вместе со своей версией, языком и языком и региональными параметрами, маркером открытого ключа и при необходимости архитектурой процессора. Он соответствует свойству сборки FullName . В следующем примере показано использование длинного имени для загрузки сборки System.dll для .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 Вызывается, если assemblyString указано полное имя сборки, а первая сборка, которая соответствует простому имени, имеет другую версию, язык и региональные параметры или маркер открытого ключа. Загрузчик не продолжает пробовать другие сборки, соответствующие простому имени.

В .NET Framework версии 2.0 архитектура процессора добавляется в удостоверение сборки и может быть указана как часть строк имени сборки. Например, "ProcessorArchitecture=msil". Однако рекомендуемый способ указать имя сборки — создать AssemblyName объект и передать его в соответствующую перегрузку Load метода. См. AssemblyName.ProcessorArchitecture.

См. также раздел

Применяется к

Load(AssemblyName)

Исходный код:
Assembly.CoreCLR.cs
Исходный код:
Assembly.CoreCLR.cs
Исходный код:
Assembly.CoreCLR.cs
Исходный код:
Assembly.CoreCLR.cs
Исходный код:
Assembly.CoreCLR.cs

Загружает сборку, указанную в ней 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

Параметры

assemblyRef
AssemblyName

Объект, описывающий загрузку сборки.

Возвращаемое значение

Загруженная сборка.

Исключения

assemblyRef равно null.

assemblyRef не найден.

Не удалось загрузить файл, который был найден.

–или–

Только платформа .NET Framework: assemblyRef указывает расположение, которое отключено на <основе loadFromRemoteSources>.

Примечание. Вместо этого в .NET для приложений Магазина Windows или переносимой библиотеке классов перехватывает исключение IOExceptionбазового класса.

assemblyRef не является допустимой сборкой для текущей загруженной среды выполнения.

Примеры

В следующем примере создается экземпляр AssemblyName объекта и используется для загрузки сборки sysglobal.dll . Затем в примере отображается полное имя общедоступных типов сборки.

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

Комментарии

В .NET Core/.NET 5+ целевая сборка будет загружена в текущий AssemblyLoadContext или в AssemblyLoadContext.CurrentContextualReflectionContext контекст, если он задан. Дополнительные сведения о загрузке сборок см. в разделе "Алгоритм загрузки управляемой сборки".

Замечание

Только .NET Framework: Сведения о загрузке сборок из удаленных расположений см. в статье <loadFromRemoteSources>.

Замечание

Только .NET Framework: Не используйте AssemblyName только CodeBase набор свойств. Свойство CodeBase не предоставляет никакие элементы удостоверения сборки (например, имя или версия), поэтому загрузка не выполняется в соответствии с правилами удостоверений по нагрузке, так как вы ожидаете от Load метода. Вместо этого сборка загружается с помощью правил загрузки. Сведения о недостатках использования контекста загрузки см. в перегрузке Assembly.LoadFrom метода или рекомендациях по загрузке сборок.

Замечание

Только .NET Framework:AssemblyName.Name Если задано свойство и AssemblyName.CodeBase свойство, первая попытка загрузить сборку использует отображаемое имя (включая версию, язык и региональные параметры и т. д.), возвращаемое свойством Assembly.FullName . Если файл не найден, CodeBase используется для поиска сборки. Если сборка найдена с помощью CodeBase, отображаемое имя соответствует сборке. Если совпадение завершается ошибкой FileLoadException , создается исключение.

См. также раздел

Применяется к

Load(Byte[], Byte[])

Исходный код:
Assembly.cs
Исходный код:
Assembly.cs
Исходный код:
Assembly.cs
Исходный код:
Assembly.cs
Исходный код:
Assembly.cs

Загружает сборку с общим форматом файлов объектов (COFF), содержащим созданную сборку, при необходимости включая символы для сборки.

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

Параметры

rawAssembly
Byte[]

Массив байтов, представляющий собой образ на основе COFF, содержащий созданную сборку.

rawSymbolStore
Byte[]

Массив байтов, содержащий необработанные байты, представляющие символы сборки.

Возвращаемое значение

Загруженная сборка.

Атрибуты

Исключения

rawAssembly равно null.

rawAssembly не является допустимой сборкой для текущей загруженной среды выполнения.

Комментарии

В .NET Core/5+ целевая сборка загружается в текущую AssemblyLoadContext. Дополнительные сведения о загрузке сборок см. в разделе "Алгоритм загрузки управляемой сборки".

Эта перегрузка метода всегда создает новый Assembly объект в собственном изолированном контексте загрузки.

Только .NET Framework: Уровень доверия сборки, загруженной с помощью этого метода, совпадает с уровнем доверия вызывающей сборки. Чтобы загрузить сборку из массива байтов с уровнем доверия домена приложения, используйте перегрузку Load(Byte[], Byte[], SecurityContextSource) метода. Дополнительные сведения об использовании доказательств с перегрузками Load метода, который принимает массивы байтов, см. в перегрузке Load(Byte[], Byte[], Evidence) метода.

Применяется к