Este artículo se tradujo automáticamente. Para ver el artículo en inglés, active la casilla Inglés. Además, puede mostrar el texto en inglés en una ventana emergente si mueve el puntero del mouse sobre el texto.
Traducción
Inglés

Clase Activator

 

Publicado: octubre de 2016

Contiene métodos para crear tipos de objetos de forma local o remota, o para obtener referencias a objetos remotos existentes. Esta clase no puede heredarse.

Espacio de nombres:   System
Ensamblado:  mscorlib (en mscorlib.dll)


[ClassInterfaceAttribute(ClassInterfaceType.None)]
[ComVisibleAttribute(true)]
public sealed class Activator : _Activator

NombreDescripción
System_CAPS_pubmethodSystem_CAPS_staticCreateComInstanceFrom(String, String)

Crea una instancia del objeto COM cuyo nombre se especifica, usando el archivo de ensamblado con nombre y el constructor predeterminado.

System_CAPS_pubmethodSystem_CAPS_staticCreateComInstanceFrom(String, String, Byte[], AssemblyHashAlgorithm)

Crea una instancia del objeto COM cuyo nombre se especifica, usando el archivo de ensamblado con nombre y el constructor predeterminado.

System_CAPS_pubmethodSystem_CAPS_staticCreateInstance(ActivationContext)

Crea una instancia del tipo designado por el objeto ActivationContext especificado.

System_CAPS_pubmethodSystem_CAPS_staticCreateInstance(ActivationContext, String[])

Crea una instancia del tipo designado por el objeto ActivationContext especificado y activada con los datos de activación personalizados especificados.

System_CAPS_pubmethodSystem_CAPS_staticCreateInstance(AppDomain, String, String)

Crea una instancia del tipo cuyo nombre se especifica en el dominio remoto indicado, usando el ensamblado con nombre y el constructor predeterminado.

System_CAPS_pubmethodSystem_CAPS_staticCreateInstance(AppDomain, String, String, Boolean, BindingFlags, Binder, Object[], CultureInfo, Object[])

Crea una instancia del tipo cuyo nombre se especifica en el dominio remoto indicado, usando el ensamblado con nombre y el constructor que se adapta mejor a los parámetros especificados.

System_CAPS_pubmethodSystem_CAPS_staticCreateInstance(AppDomain, String, String, Boolean, BindingFlags, Binder, Object[], CultureInfo, Object[], Evidence)

Obsoleto. Crea una instancia del tipo cuyo nombre se especifica en el dominio remoto indicado, usando el ensamblado con nombre y el constructor que se adapta mejor a los parámetros especificados.

System_CAPS_pubmethodSystem_CAPS_staticCreateInstance(String, String)

Crea una instancia del tipo cuyo nombre se especifica, usando el ensamblado con nombre y el constructor predeterminado.

System_CAPS_pubmethodSystem_CAPS_staticCreateInstance(String, String, Boolean, BindingFlags, Binder, Object[], CultureInfo, Object[])

Crea una instancia del tipo cuyo nombre se especifica, usando el ensamblado con nombre y el constructor que mejor coincida con los parámetros especificados.

System_CAPS_pubmethodSystem_CAPS_staticCreateInstance(String, String, Boolean, BindingFlags, Binder, Object[], CultureInfo, Object[], Evidence)

Obsoleto. Crea una instancia del tipo cuyo nombre se especifica, usando el ensamblado con nombre y el constructor que mejor coincida con los parámetros especificados.

System_CAPS_pubmethodSystem_CAPS_staticCreateInstance(String, String, Object[])

Crea una instancia del tipo cuyo nombre se especifica, usando el ensamblado con nombre y el constructor predeterminado.

System_CAPS_pubmethodSystem_CAPS_staticCreateInstance(Type)

Crea una instancia del tipo especificado usando el constructor predeterminado de ese tipo.

System_CAPS_pubmethodSystem_CAPS_staticCreateInstance(Type, BindingFlags, Binder, Object[], CultureInfo)

Crea una instancia del tipo especificado usando el constructor que mejor coincida con los parámetros especificados.

System_CAPS_pubmethodSystem_CAPS_staticCreateInstance(Type, BindingFlags, Binder, Object[], CultureInfo, Object[])

Crea una instancia del tipo especificado usando el constructor que mejor coincida con los parámetros especificados.

System_CAPS_pubmethodSystem_CAPS_staticCreateInstance(Type, Boolean)

Crea una instancia del tipo especificado usando el constructor predeterminado de ese tipo.

System_CAPS_pubmethodSystem_CAPS_staticCreateInstance(Type, Object[])

Crea una instancia del tipo especificado usando el constructor que mejor coincida con los parámetros especificados.

System_CAPS_pubmethodSystem_CAPS_staticCreateInstance(Type, Object[], Object[])

Crea una instancia del tipo especificado usando el constructor que mejor coincida con los parámetros especificados.

System_CAPS_pubmethodSystem_CAPS_staticCreateInstance<T>()

Crea una instancia del tipo designado por el parámetro de tipo genérico especificado, usando el constructor sin parámetros.

System_CAPS_pubmethodSystem_CAPS_staticCreateInstanceFrom(AppDomain, String, String)

Crea una instancia del tipo cuyo nombre se especifica en el dominio remoto indicado, usando el archivo de ensamblado con nombre y el constructor predeterminado.

System_CAPS_pubmethodSystem_CAPS_staticCreateInstanceFrom(AppDomain, String, String, Boolean, BindingFlags, Binder, Object[], CultureInfo, Object[])

Crea una instancia del tipo cuyo nombre se especifica en el dominio remoto indicado, usando el archivo del ensamblado con nombre y el constructor que se adapta mejor a los parámetros especificados.

System_CAPS_pubmethodSystem_CAPS_staticCreateInstanceFrom(AppDomain, String, String, Boolean, BindingFlags, Binder, Object[], CultureInfo, Object[], Evidence)

Obsoleto. Crea una instancia del tipo cuyo nombre se especifica en el dominio remoto indicado, usando el archivo del ensamblado con nombre y el constructor que se adapta mejor a los parámetros especificados.

System_CAPS_pubmethodSystem_CAPS_staticCreateInstanceFrom(String, String)

Crea una instancia del tipo cuyo nombre se especifica, usando el archivo de ensamblado con nombre y el constructor predeterminado.

System_CAPS_pubmethodSystem_CAPS_staticCreateInstanceFrom(String, String, Boolean, BindingFlags, Binder, Object[], CultureInfo, Object[])

Crea una instancia del tipo cuyo nombre se especifica, usando el archivo de ensamblado con nombre y el constructor que mejor coincida con los parámetros especificados.

System_CAPS_pubmethodSystem_CAPS_staticCreateInstanceFrom(String, String, Boolean, BindingFlags, Binder, Object[], CultureInfo, Object[], Evidence)

Obsoleto. Crea una instancia del tipo cuyo nombre se especifica, usando el archivo de ensamblado con nombre y el constructor que mejor coincida con los parámetros especificados.

System_CAPS_pubmethodSystem_CAPS_staticCreateInstanceFrom(String, String, Object[])

Crea una instancia del tipo cuyo nombre se especifica, usando el archivo de ensamblado con nombre y el constructor predeterminado.

System_CAPS_pubmethodEquals(Object)

Determina si el objeto especificado es igual al objeto actual.(Heredado de Object).

System_CAPS_pubmethodGetHashCode()

Sirve como la función hash predeterminada.(Heredado de Object).

System_CAPS_pubmethodSystem_CAPS_staticGetObject(Type, String)

Crea un proxy para el objeto conocido indicado por el tipo y dirección URL especificados.

System_CAPS_pubmethodSystem_CAPS_staticGetObject(Type, String, Object)

Crea un proxy para el objeto conocido indicado por el tipo, dirección URL y datos de canal especificados.

System_CAPS_pubmethodGetType()

Obtiene el Type de la instancia actual.(Heredado de Object).

System_CAPS_pubmethodToString()

Devuelve una cadena que representa el objeto actual.(Heredado de Object).

NombreDescripción
System_CAPS_pubinterfaceSystem_CAPS_privmethod_Activator.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr)

Asigna un conjunto de nombres a un conjunto correspondiente de identificadores de envío.

System_CAPS_pubinterfaceSystem_CAPS_privmethod_Activator.GetTypeInfo(UInt32, UInt32, IntPtr)

Recupera la información de tipo de un objeto, que se puede usar después para obtener la información de tipo de una interfaz.

System_CAPS_pubinterfaceSystem_CAPS_privmethod_Activator.GetTypeInfoCount(UInt32)

Recupera el número de interfaces de información de tipo que proporciona un objeto (0 ó 1).

System_CAPS_pubinterfaceSystem_CAPS_privmethod_Activator.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

Proporciona acceso a las propiedades y los métodos expuestos por un objeto.

El CreateInstance método crea una instancia de un tipo definido en un ensamblado llamando al constructor que mejor coincide con los argumentos especificados. Si no se especifica ningún argumento, se invoca el constructor que no toma ningún parámetro, es decir, el constructor predeterminado.

Debe tener permisos suficientes para buscar y llamar a un constructor; en caso contrario, se produce una excepción. De forma predeterminada, sólo los constructores públicos se consideran durante la búsqueda de un constructor. Si no se encuentra ningún constructor o un constructor predeterminado, se produce una excepción.

Un parámetro enlazador especifica un objeto que busca un ensamblado para un constructor adecuado. Puede especificar sus propios criterios de búsqueda y el enlazador. Si no se especifica ningún enlazador, se utiliza un enlazador predeterminado. Para obtener más información, vea las clases System.Reflection.Binder y System.Reflection.BindingFlags.

Un parámetro de evidencia afecta a la directiva de seguridad y permisos para el constructor. Para obtener más información, vea la clase System.Security.Policy.Evidence.

Una instancia de un tipo se puede crear en un sitio local o remoto. Si el tipo se crea de forma remota, un parámetro de atributo de activación especifica el URI del sitio remoto. La llamada para crear la instancia puede pasar a través de sitios intermedios antes de llegar al sitio remoto. Otros atributos de activación pueden modificar el entorno o contexto, en el que se ejecuta la llamada en los sitios intermedios y remotos.

Si la instancia se crea localmente, se devuelve una referencia a ese objeto. Si la instancia se crea de forma remota, se devuelve una referencia a un servidor proxy. El objeto remoto se manipula a través del proxy como si fuera un objeto local.

El GetObject método crea un proxy para un objeto remoto en ejecución, el objeto conocido activado en el servidor o el servicio Web XML. Puede especificar el medio de conexión, es decir, el canal. Para obtener más información, vea la clase System.Runtime.Remoting.Channels.ChannelServices.

Los ensamblados contienen definiciones de tipo. El CreateInstance método crea una instancia de un tipo de un ensamblado que se está ejecutando. El CreateInstanceFrom método crea una instancia de un archivo que contiene un ensamblado. El CreateComInstanceFrom método crea una instancia de un objeto COM desde un archivo que contiene un ensamblado.

En el ejemplo siguiente se muestra cómo utilizar la Activator clase para construir objetos dinámicamente en tiempo de ejecución.

using System;
using System.Reflection;
using System.Text;

public class SomeType
{
    public void DoSomething(int x)
    {
        Console.WriteLine("100 / {0} = {1}", x, 100 / x);
    }
}

public class Example
{
    static void Main()
    {
        // Create an instance of the StringBuilder type using 
        // Activator.CreateInstance.
        Object o = Activator.CreateInstance(typeof(StringBuilder));

        // Append a string into the StringBuilder object and display the 
        // StringBuilder.
        StringBuilder sb = (StringBuilder) o;
        sb.Append("Hello, there.");
        Console.WriteLine(sb);

        // Create an instance of the SomeType class that is defined in this 
        // assembly.
        System.Runtime.Remoting.ObjectHandle oh = 
            Activator.CreateInstanceFrom(Assembly.GetEntryAssembly().CodeBase, 
                                         typeof(SomeType).FullName);

        // Call an instance method defined by the SomeType type using this object.
        SomeType st = (SomeType) oh.Unwrap();

        st.DoSomething(5);
    }
}

/* This code produces the following output:

Hello, there.
100 / 5 = 20
 */

Plataforma universal de Windows
Disponible desde 8
.NET Framework
Disponible desde 1.1
Biblioteca de clases portable
Se admite en: plataformas portátiles de .NET
Silverlight
Disponible desde 2.0
Windows Phone Silverlight
Disponible desde 7.0
Windows Phone
Disponible desde 8.1

Cualquier miembro ( Compartido en Visual Basic) estático público de este tipo es seguro para subprocesos. No se garantiza que los miembros de instancia sean seguros para subprocesos.

Volver al principio
Mostrar: