AppDomain.CreateInstance Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Создает новый экземпляр указанного типа, определенного в указанной сборке.
Перегрузки
| Имя | Описание |
|---|---|
| CreateInstance(String, String) |
Создает новый экземпляр указанного типа, определенного в указанной сборке. |
| CreateInstance(String, String, Object[]) |
Создает новый экземпляр указанного типа, определенного в указанной сборке. Параметр задает массив атрибутов активации. |
| CreateInstance(String, String, Boolean, BindingFlags, Binder, Object[], CultureInfo, Object[]) |
Создает новый экземпляр указанного типа, определенного в указанной сборке. Параметры указывают привязку, флаги привязки, аргументы конструктора, сведения о языке и региональных параметрах, используемые для интерпретации аргументов и необязательные атрибуты активации. |
| CreateInstance(String, String, Boolean, BindingFlags, Binder, Object[], CultureInfo, Object[], Evidence) |
Устаревшие.
Создает новый экземпляр указанного типа, определенного в указанной сборке. Параметры указывают привязку, флаги привязки, аргументы конструктора, сведения о языке и региональных параметрах, используемые для интерпретации аргументов, атрибутов активации и авторизации для создания типа. |
CreateInstance(String, String)
- Исходный код:
- AppDomain.cs
- Исходный код:
- AppDomain.cs
- Исходный код:
- AppDomain.cs
- Исходный код:
- AppDomain.cs
- Исходный код:
- AppDomain.cs
Создает новый экземпляр указанного типа, определенного в указанной сборке.
public:
System::Runtime::Remoting::ObjectHandle ^ CreateInstance(System::String ^ assemblyName, System::String ^ typeName);
public:
virtual System::Runtime::Remoting::ObjectHandle ^ CreateInstance(System::String ^ assemblyName, System::String ^ typeName);
[System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("Type and its constructor could be removed")]
public System.Runtime.Remoting.ObjectHandle? CreateInstance(string assemblyName, string typeName);
public System.Runtime.Remoting.ObjectHandle? CreateInstance(string assemblyName, string typeName);
public System.Runtime.Remoting.ObjectHandle CreateInstance(string assemblyName, string typeName);
[<System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("Type and its constructor could be removed")>]
member this.CreateInstance : string * string -> System.Runtime.Remoting.ObjectHandle
member this.CreateInstance : string * string -> System.Runtime.Remoting.ObjectHandle
abstract member CreateInstance : string * string -> System.Runtime.Remoting.ObjectHandle
override this.CreateInstance : string * string -> System.Runtime.Remoting.ObjectHandle
Public Function CreateInstance (assemblyName As String, typeName As String) As ObjectHandle
Параметры
- typeName
- String
Полное имя запрошенного типа, включая пространство имен, но не сборку, как возвращается свойством FullName .
Возвращаемое значение
Объект, представляющий собой оболочку для нового экземпляра, указанного в typeName. Возвращаемое значение должно быть раскрыто для доступа к реальному объекту.
Реализации
- Атрибуты
Исключения
Операция выполняется в выгруженном домене приложения.
assemblyName или typeName есть null.
assemblyName не является допустимой сборкой для текущей загруженной среды выполнения.
Сборка или модуль была загружена дважды с двумя разными доказательствами.
assemblyName не найден.
Вызывающий объект не имеет разрешения на вызов этого конструктора.
Не найдено соответствующего общедоступного конструктора.
typeName не найден в assemblyName.
Этот экземпляр .null
Комментарии
Этот метод вызывает конструктор без параметров для typeName.
Сведения о формате AssemblyNameсм. в assemblyName.
Попытка вызова CreateInstance целевого домена приложения, который не является текущим доменом приложения, приведет к успешной загрузке сборки в целевом домене приложения. Assembly Так как это не MarshalByRefObjectтак, когда этот метод пытается вернуть Assembly загруженную сборку в текущий домен приложения, среда CLR попытается загрузить сборку в текущий домен приложения, а загрузка может завершиться ошибкой. Сборка, загруженная в текущий домен приложения, может отличаться от сборки, загруженной сначала, если параметры пути для двух доменов приложений отличаются.
См. также раздел
Применяется к
CreateInstance(String, String, Object[])
- Исходный код:
- AppDomain.cs
- Исходный код:
- AppDomain.cs
- Исходный код:
- AppDomain.cs
- Исходный код:
- AppDomain.cs
- Исходный код:
- AppDomain.cs
Создает новый экземпляр указанного типа, определенного в указанной сборке. Параметр задает массив атрибутов активации.
public:
System::Runtime::Remoting::ObjectHandle ^ CreateInstance(System::String ^ assemblyName, System::String ^ typeName, cli::array <System::Object ^> ^ activationAttributes);
public:
virtual System::Runtime::Remoting::ObjectHandle ^ CreateInstance(System::String ^ assemblyName, System::String ^ typeName, cli::array <System::Object ^> ^ activationAttributes);
[System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("Type and its constructor could be removed")]
public System.Runtime.Remoting.ObjectHandle? CreateInstance(string assemblyName, string typeName, object?[]? activationAttributes);
public System.Runtime.Remoting.ObjectHandle? CreateInstance(string assemblyName, string typeName, object?[]? activationAttributes);
public System.Runtime.Remoting.ObjectHandle CreateInstance(string assemblyName, string typeName, object[] activationAttributes);
[<System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("Type and its constructor could be removed")>]
member this.CreateInstance : string * string * obj[] -> System.Runtime.Remoting.ObjectHandle
member this.CreateInstance : string * string * obj[] -> System.Runtime.Remoting.ObjectHandle
abstract member CreateInstance : string * string * obj[] -> System.Runtime.Remoting.ObjectHandle
override this.CreateInstance : string * string * obj[] -> System.Runtime.Remoting.ObjectHandle
Public Function CreateInstance (assemblyName As String, typeName As String, activationAttributes As Object()) As ObjectHandle
Параметры
- typeName
- String
Полное имя запрошенного типа, включая пространство имен, но не сборку, как возвращается свойством FullName .
- activationAttributes
- Object[]
Массив одного или нескольких атрибутов, которые могут участвовать в активации. Как правило, массив, содержащий один UrlAttribute объект, указывающий URL-адрес, необходимый для активации удаленного объекта.
Этот параметр связан с объектами, активированными клиентом. Активация клиента — это устаревшая технология, которая сохраняется для обратной совместимости, но не рекомендуется для новой разработки. Распределенные приложения должны использовать Windows Communication Foundation.
Возвращаемое значение
Объект, представляющий собой оболочку для нового экземпляра, указанного в typeName. Возвращаемое значение должно быть раскрыто для доступа к реальному объекту.
Реализации
- Атрибуты
Исключения
Операция выполняется в выгруженном домене приложения.
assemblyName или typeName есть null.
assemblyName не является допустимой сборкой для текущей загруженной среды выполнения.
Сборка или модуль была загружена дважды с двумя разными доказательствами.
assemblyName не найден.
Вызывающий объект не имеет разрешения на вызов этого конструктора.
Не найдено соответствующего общедоступного конструктора.
Вызывающий объект не может предоставлять атрибуты активации для объекта, от который не наследуется MarshalByRefObject.
typeName не найден в assemblyName.
Этот экземпляр .null
Комментарии
Этот метод вызывает конструктор без параметров для typeName.
Сведения о формате AssemblyNameсм. в assemblyName.
Попытка вызова CreateInstance целевого домена приложения, который не является текущим доменом приложения, приведет к успешной загрузке сборки в целевом домене приложения. Assembly Так как это не MarshalByRefObjectтак, когда этот метод пытается вернуть Assembly загруженную сборку в текущий домен приложения, среда CLR попытается загрузить сборку в текущий домен приложения, а загрузка может завершиться ошибкой. Сборка, загруженная в текущий домен приложения, может отличаться от сборки, загруженной сначала, если параметры пути для двух доменов приложений отличаются.
См. также раздел
Применяется к
CreateInstance(String, String, Boolean, BindingFlags, Binder, Object[], CultureInfo, Object[])
- Исходный код:
- AppDomain.cs
- Исходный код:
- AppDomain.cs
- Исходный код:
- AppDomain.cs
- Исходный код:
- AppDomain.cs
- Исходный код:
- AppDomain.cs
Создает новый экземпляр указанного типа, определенного в указанной сборке. Параметры указывают привязку, флаги привязки, аргументы конструктора, сведения о языке и региональных параметрах, используемые для интерпретации аргументов и необязательные атрибуты активации.
public:
System::Runtime::Remoting::ObjectHandle ^ CreateInstance(System::String ^ assemblyName, System::String ^ typeName, bool ignoreCase, System::Reflection::BindingFlags bindingAttr, System::Reflection::Binder ^ binder, cli::array <System::Object ^> ^ args, System::Globalization::CultureInfo ^ culture, cli::array <System::Object ^> ^ activationAttributes);
[System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("Type and its constructor could be removed")]
public System.Runtime.Remoting.ObjectHandle? CreateInstance(string assemblyName, string typeName, bool ignoreCase, System.Reflection.BindingFlags bindingAttr, System.Reflection.Binder? binder, object?[]? args, System.Globalization.CultureInfo? culture, object?[]? activationAttributes);
public System.Runtime.Remoting.ObjectHandle? CreateInstance(string assemblyName, string typeName, bool ignoreCase, System.Reflection.BindingFlags bindingAttr, System.Reflection.Binder? binder, object?[]? args, System.Globalization.CultureInfo? culture, object?[]? activationAttributes);
public System.Runtime.Remoting.ObjectHandle CreateInstance(string assemblyName, string typeName, bool ignoreCase, System.Reflection.BindingFlags bindingAttr, System.Reflection.Binder binder, object[] args, System.Globalization.CultureInfo culture, object[] activationAttributes);
[<System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("Type and its constructor could be removed")>]
member this.CreateInstance : string * string * bool * System.Reflection.BindingFlags * System.Reflection.Binder * obj[] * System.Globalization.CultureInfo * obj[] -> System.Runtime.Remoting.ObjectHandle
member this.CreateInstance : string * string * bool * System.Reflection.BindingFlags * System.Reflection.Binder * obj[] * System.Globalization.CultureInfo * obj[] -> System.Runtime.Remoting.ObjectHandle
Public Function CreateInstance (assemblyName As String, typeName As String, ignoreCase As Boolean, bindingAttr As BindingFlags, binder As Binder, args As Object(), culture As CultureInfo, activationAttributes As Object()) As ObjectHandle
Параметры
- typeName
- String
Полное имя запрошенного типа, включая пространство имен, но не сборку, как возвращается свойством FullName .
- ignoreCase
- Boolean
Логическое значение, указывающее, следует ли выполнять поиск с учетом регистра.
- bindingAttr
- BindingFlags
Сочетание нулевых или более битовых флагов, влияющих на поиск конструктора typeName . Если bindingAttr значение равно нулю, выполняется поиск общедоступных конструкторов с учетом регистра.
- binder
- Binder
Объект, который включает привязку, приведение типов аргументов, вызов элементов и получение объектов MemberInfo с помощью отражения. Если binder значение null, используется привязка по умолчанию.
- args
- Object[]
Аргументы, которые необходимо передать конструктору. Этот массив аргументов должен соответствовать числу, порядку и типу параметров вызываемого конструктора. Если конструктор без параметров предпочтителен, args должен быть пустым массивом или null.
- culture
- CultureInfo
Сведения, относящиеся к языку и региональным параметрам, которые управляют приведением args формальных типов, объявленных для конструктора typeName . В противном culturenullCultureInfo случае используется текущий поток.
- activationAttributes
- Object[]
Массив одного или нескольких атрибутов, которые могут участвовать в активации. Как правило, массив, содержащий один UrlAttribute объект, указывающий URL-адрес, необходимый для активации удаленного объекта.
Этот параметр связан с объектами, активированными клиентом. Активация клиента — это устаревшая технология, которая сохраняется для обратной совместимости, но не рекомендуется для новой разработки. Распределенные приложения должны использовать Windows Communication Foundation.
Возвращаемое значение
Объект, представляющий собой оболочку для нового экземпляра, указанного в typeName. Возвращаемое значение должно быть раскрыто для доступа к реальному объекту.
- Атрибуты
Исключения
Операция выполняется в выгруженном домене приложения.
assemblyName или typeName есть null.
assemblyName не является допустимой сборкой для текущей загруженной среды выполнения.
Сборка или модуль была загружена дважды с двумя разными доказательствами.
assemblyName не найден.
Вызывающий объект не имеет разрешения на вызов этого конструктора.
Не найден соответствующий конструктор.
Вызывающий объект не может предоставлять атрибуты активации для объекта, от который не наследуется MarshalByRefObject.
typeName не найден в assemblyName.
Этот экземпляр .null
Комментарии
Сведения о формате AssemblyNameсм. в assemblyName.
Попытка вызова CreateInstance целевого домена приложения, который не является текущим доменом приложения, приведет к успешной загрузке сборки в целевом домене приложения. Assembly Так как это не MarshalByRefObjectтак, когда этот метод пытается вернуть Assembly загруженную сборку в текущий домен приложения, среда CLR попытается загрузить сборку в текущий домен приложения, а загрузка может завершиться ошибкой. Сборка, загруженная в текущий домен приложения, может отличаться от сборки, загруженной сначала, если параметры пути для двух доменов приложений отличаются.
См. также раздел
Применяется к
CreateInstance(String, String, Boolean, BindingFlags, Binder, Object[], CultureInfo, Object[], Evidence)
Внимание!
Methods which use evidence to sandbox are obsolete and will be removed in a future release of the .NET Framework. Please use an overload of CreateInstance which does not take an Evidence parameter. See http://go.microsoft.com/fwlink/?LinkID=155570 for more information.
Создает новый экземпляр указанного типа, определенного в указанной сборке. Параметры указывают привязку, флаги привязки, аргументы конструктора, сведения о языке и региональных параметрах, используемые для интерпретации аргументов, атрибутов активации и авторизации для создания типа.
public:
virtual System::Runtime::Remoting::ObjectHandle ^ CreateInstance(System::String ^ assemblyName, System::String ^ typeName, bool ignoreCase, System::Reflection::BindingFlags bindingAttr, System::Reflection::Binder ^ binder, cli::array <System::Object ^> ^ args, System::Globalization::CultureInfo ^ culture, cli::array <System::Object ^> ^ activationAttributes, System::Security::Policy::Evidence ^ securityAttributes);
public System.Runtime.Remoting.ObjectHandle CreateInstance(string assemblyName, string typeName, bool ignoreCase, System.Reflection.BindingFlags bindingAttr, System.Reflection.Binder binder, object[] args, System.Globalization.CultureInfo culture, object[] activationAttributes, System.Security.Policy.Evidence securityAttributes);
[System.Obsolete("Methods which use evidence to sandbox are obsolete and will be removed in a future release of the .NET Framework. Please use an overload of CreateInstance which does not take an Evidence parameter. See http://go.microsoft.com/fwlink/?LinkID=155570 for more information.")]
public System.Runtime.Remoting.ObjectHandle CreateInstance(string assemblyName, string typeName, bool ignoreCase, System.Reflection.BindingFlags bindingAttr, System.Reflection.Binder binder, object[] args, System.Globalization.CultureInfo culture, object[] activationAttributes, System.Security.Policy.Evidence securityAttributes);
abstract member CreateInstance : string * string * bool * System.Reflection.BindingFlags * System.Reflection.Binder * obj[] * System.Globalization.CultureInfo * obj[] * System.Security.Policy.Evidence -> System.Runtime.Remoting.ObjectHandle
override this.CreateInstance : string * string * bool * System.Reflection.BindingFlags * System.Reflection.Binder * obj[] * System.Globalization.CultureInfo * obj[] * System.Security.Policy.Evidence -> System.Runtime.Remoting.ObjectHandle
[<System.Obsolete("Methods which use evidence to sandbox are obsolete and will be removed in a future release of the .NET Framework. Please use an overload of CreateInstance which does not take an Evidence parameter. See http://go.microsoft.com/fwlink/?LinkID=155570 for more information.")>]
abstract member CreateInstance : string * string * bool * System.Reflection.BindingFlags * System.Reflection.Binder * obj[] * System.Globalization.CultureInfo * obj[] * System.Security.Policy.Evidence -> System.Runtime.Remoting.ObjectHandle
override this.CreateInstance : string * string * bool * System.Reflection.BindingFlags * System.Reflection.Binder * obj[] * System.Globalization.CultureInfo * obj[] * System.Security.Policy.Evidence -> System.Runtime.Remoting.ObjectHandle
Public Function CreateInstance (assemblyName As String, typeName As String, ignoreCase As Boolean, bindingAttr As BindingFlags, binder As Binder, args As Object(), culture As CultureInfo, activationAttributes As Object(), securityAttributes As Evidence) As ObjectHandle
Параметры
- typeName
- String
Полное имя запрошенного типа, включая пространство имен, но не сборку, как возвращается свойством FullName .
- ignoreCase
- Boolean
Логическое значение, указывающее, следует ли выполнять поиск с учетом регистра.
- bindingAttr
- BindingFlags
Сочетание нулевых или более битовых флагов, влияющих на поиск конструктора typeName . Если bindingAttr значение равно нулю, выполняется поиск общедоступных конструкторов с учетом регистра.
- binder
- Binder
Объект, который включает привязку, приведение типов аргументов, вызов элементов и получение объектов MemberInfo с помощью отражения. Если binder значение null, используется привязка по умолчанию.
- args
- Object[]
Аргументы, которые необходимо передать конструктору. Этот массив аргументов должен соответствовать числу, порядку и типу параметров вызываемого конструктора. Если конструктор без параметров предпочтителен, args должен быть пустым массивом или null.
- culture
- CultureInfo
Сведения, относящиеся к языку и региональным параметрам, которые управляют приведением args формальных типов, объявленных для конструктора typeName . В противном culturenullCultureInfo случае используется текущий поток.
- activationAttributes
- Object[]
Массив одного или нескольких атрибутов, которые могут участвовать в активации. Как правило, массив, содержащий один UrlAttribute объект, указывающий URL-адрес, необходимый для активации удаленного объекта.
Этот параметр связан с объектами, активированными клиентом. Активация клиента — это устаревшая технология, которая сохраняется для обратной совместимости, но не рекомендуется для новой разработки. Распределенные приложения должны использовать Windows Communication Foundation.
- securityAttributes
- Evidence
Сведения, используемые для авторизации создания typeName.
Возвращаемое значение
Объект, представляющий собой оболочку для нового экземпляра, указанного в typeName. Возвращаемое значение должно быть раскрыто для доступа к реальному объекту.
Реализации
- Атрибуты
Исключения
Операция выполняется в выгруженном домене приложения.
assemblyName или typeName есть null.
assemblyName не является допустимой сборкой для текущей загруженной среды выполнения.
Сборка или модуль была загружена дважды с двумя разными доказательствами.
assemblyName не найден.
Вызывающий объект не имеет разрешения на вызов этого конструктора.
Не найден соответствующий конструктор.
Вызывающий объект не может предоставлять атрибуты активации для объекта, от который не наследуется MarshalByRefObject.
–или–
securityAttributes не nullявляется . Если устаревшая политика CAS не включена, securityAttributes следует иметь значение null
typeName не найден в assemblyName.
Этот экземпляр .null
Комментарии
Сведения о формате AssemblyNameсм. в assemblyName.
Попытка вызова CreateInstance целевого домена приложения, который не является текущим доменом приложения, приведет к успешной загрузке сборки в целевом домене приложения. Assembly Так как это не MarshalByRefObjectтак, когда этот метод пытается вернуть Assembly загруженную сборку в текущий домен приложения, среда CLR попытается загрузить сборку в текущий домен приложения, а загрузка может завершиться ошибкой. Сборка, загруженная в текущий домен приложения, может отличаться от сборки, загруженной сначала, если параметры пути для двух доменов приложений отличаются.