Exportar (0) Imprimir
Expandir todo
Este artículo proviene de un motor de traducción automática. Mueva el puntero sobre las frases del artículo para ver el texto original. Más información.
Traducción
Original

MethodBuilder (Clase)

Define y representa a un método (o constructor) de una clase dinámica.

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

[ComVisibleAttribute(true)]
[ClassInterfaceAttribute(ClassInterfaceType.None)]
[HostProtectionAttribute(SecurityAction.LinkDemand, MayLeakOnAbort = true)]
public sealed class MethodBuilder : MethodInfo, 
	_MethodBuilder

El tipo MethodBuilder expone los siguientes miembros.

  NombreDescripción
Propiedad públicaAttributesRecupera los atributos para este método. (Invalida a MethodBase.Attributes).
Propiedad públicaCallingConventionDevuelve la convención de llamadas del método. (Invalida a MethodBase.CallingConvention).
Propiedad públicaContainsGenericParametersNo es compatible con este tipo. (Invalida a MethodBase.ContainsGenericParameters).
Propiedad públicaCustomAttributesObtiene una colección que contiene los atributos personalizados de este miembro. (Se hereda de MemberInfo).
Propiedad públicaDeclaringTypeDevuelve el tipo que declara este método. (Invalida a MemberInfo.DeclaringType).
Propiedad públicaInitLocalsObtiene o establece un valor booleano que especifica si las variables locales de este método se inicializan en cero. El valor predeterminado de esta propiedad es true.
Propiedad públicaIsAbstractObtiene un valor que indica si el método es abstracto. (Se hereda de MethodBase).
Propiedad públicaIsAssemblyObtiene un valor que indica si MethodAttributes.Assembly describe la visibilidad posible de este método o constructor; es decir, el método o el constructor es visible como mucho para otros tipos del mismo ensamblado y no es visible para los tipos derivados fuera del ensamblado. (Se hereda de MethodBase).
Propiedad públicaIsConstructorObtiene un valor que indica si el método es un constructor. (Se hereda de MethodBase).
Propiedad públicaIsFamilyObtiene un valor que indica si MethodAttributes.Family describe la visibilidad de este método o constructor; es decir, el método o el constructor sólo es visible dentro de su clase y clases derivadas. (Se hereda de MethodBase).
Propiedad públicaIsFamilyAndAssemblyObtiene un valor que indica si MethodAttributes.FamANDAssem describe la visibilidad de este método o constructor; es decir, las clases derivadas pueden llamar al método o constructor, pero sólo si están en el mismo ensamblado. (Se hereda de MethodBase).
Propiedad públicaIsFamilyOrAssemblyObtiene un valor que indica si MethodAttributes.FamORAssem describe la visibilidad posible de este método o constructor; es decir, las clases derivadas pueden llamar al método o constructor con independencia de dónde se encuentren, así como las clases del mismo ensamblado. (Se hereda de MethodBase).
Propiedad públicaIsFinalObtiene un valor que indica si este método es final. (Se hereda de MethodBase).
Propiedad públicaIsGenericMethodObtiene un valor que indica si el método es un método genérico. (Invalida a MethodBase.IsGenericMethod).
Propiedad públicaIsGenericMethodDefinitionObtiene un valor que indica si el actual objeto MethodBuilder representa la definición de un método genérico. (Invalida a MethodBase.IsGenericMethodDefinition).
Propiedad públicaIsHideBySigObtiene un valor que indica si sólo hay un miembro del mismo tipo y con idéntica firma oculto en la clase derivada. (Se hereda de MethodBase).
Propiedad públicaIsPrivateObtiene un valor que indica si este miembro es privado. (Se hereda de MethodBase).
Propiedad públicaIsPublicObtiene un valor que indica si éste es un método público. (Se hereda de MethodBase).
Propiedad públicaIsSecurityCriticalProduce una excepción NotSupportedException en todos los casos (Invalida a MethodBase.IsSecurityCritical).
Propiedad públicaIsSecuritySafeCriticalProduce una excepción NotSupportedException en todos los casos (Invalida a MethodBase.IsSecuritySafeCritical).
Propiedad públicaIsSecurityTransparentProduce una excepción NotSupportedException en todos los casos (Invalida a MethodBase.IsSecurityTransparent).
Propiedad públicaIsSpecialNameObtiene un valor que indica si este método tiene un nombre especial. (Se hereda de MethodBase).
Propiedad públicaIsStaticObtiene un valor que indica si el método es static. (Se hereda de MethodBase).
Propiedad públicaIsVirtualObtiene un valor que indica si el método es virtual. (Se hereda de MethodBase).
Propiedad públicaMemberTypeObtiene un valor de MemberTypes que indica que este miembro es un método. (Se hereda de MethodInfo).
Propiedad públicaMetadataTokenObtiene un valor que identifica un elemento de metadatos. (Se hereda de MemberInfo).
Propiedad públicaMethodHandleRecupera el identificador interno para el método. Utilice este identificador para tener acceso al identificador de metadatos subyacente. (Invalida a MethodBase.MethodHandle).
Propiedad públicaMethodImplementationFlagsObtiene las marcas MethodImplAttributes que especifican los atributos de una implementación de método. (Se hereda de MethodBase).
Propiedad públicaModuleObtiene el módulo en el que se define el método actual. (Invalida a MemberInfo.Module).
Propiedad públicaNameRecupera el nombre de este método. (Invalida a MemberInfo.Name).
Propiedad públicaReflectedTypeRecupera la clase utilizada en la reflexión para obtener este objeto. (Invalida a MemberInfo.ReflectedType).
Propiedad públicaReturnParameterObtiene un objeto ParameterInfo que contiene información sobre el tipo de valor devuelto del método como, por ejemplo, cuando el tipo de valor devuelto tiene modificadores personalizados. (Invalida a MethodInfo.ReturnParameter).
Propiedad públicaReturnTypeObtiene el tipo de valor devuelto del método representado por MethodBuilder. (Invalida a MethodInfo.ReturnType).
Propiedad públicaReturnTypeCustomAttributesDevuelve los atributos personalizados del tipo de valor devuelto por el método. (Invalida a MethodInfo.ReturnTypeCustomAttributes).
Propiedad públicaSignatureRecupera la firma del método.
Arriba

  NombreDescripción
Método públicoAddDeclarativeSecurityAgrega seguridad declarativa a este método.
Método públicoCreateDelegate(Type)Crea un delegado del tipo especificado a partir de este método. (Se hereda de MethodInfo).
Método públicoCreateDelegate(Type, Object)Crea un delegado del tipo especificado con el destino especificado a partir de este método. (Se hereda de MethodInfo).
Método públicoCreateMethodBodyCrea el cuerpo del método mediante una matriz de bytes especificada de las instrucciones máquina del Lenguaje intermedio de Microsoft (MSIL).
Método públicoDefineGenericParametersEstablece el número de parámetros de tipo genérico del método actual, especifica sus nombres y devuelve una matriz de objetos GenericTypeParameterBuilder que se pueden utilizar para definir sus restricciones.
Método públicoDefineParameterEstablece los atributos y el nombre de un parámetro de este método o del valor devuelto del mismo. Devuelve un objeto ParameterBuilder, que se puede utilizar para aplicar atributos personalizados.
Método públicoEqualsDetermina si el objeto dado es igual a esta instancia. (Invalida a MethodInfo.Equals(Object)).
Método públicoGetBaseDefinitionDevuelve la implementación base para un método. (Invalida a MethodInfo.GetBaseDefinition()).
Método públicoGetCustomAttributes(Boolean)Devuelve los atributos personalizados definidos para este método. (Invalida a MemberInfo.GetCustomAttributes(Boolean)).
Método públicoGetCustomAttributes(Type, Boolean)Devuelve los atributos personalizados identificados por el tipo dado. (Invalida a MemberInfo.GetCustomAttributes(Type, Boolean)).
Método públicoGetCustomAttributesDataDevuelve una lista de objetos CustomAttributeData que representan datos sobre los atributos que se han aplicado al miembro de destino. (Se hereda de MemberInfo).
Método públicoGetGenericArgumentsDevuelve una matriz de objetos GenericTypeParameterBuilder que representan los parámetros de tipo del método si es genérico. (Invalida a MethodInfo.GetGenericArguments()).
Método públicoGetGenericMethodDefinitionDevuelve este método. (Invalida a MethodInfo.GetGenericMethodDefinition()).
Método públicoGetHashCodeObtiene el código hash para este método. (Invalida a MethodInfo.GetHashCode()).
Método públicoGetILGenerator()Devuelve un ILGenerator para este método con un tamaño predeterminado de secuencia de Lenguaje intermedio de Microsoft (MSIL) de 64 bytes.
Método públicoGetILGenerator(Int32)Devuelve un ILGenerator para este método con el tamaño de secuencia de Lenguaje intermedio de Microsoft (MSIL) especificado.
Método públicoGetMethodBodyCuando se reemplaza en una clase derivada, obtiene un objeto MethodBody que proporciona el acceso a la secuencia de MSIL, las variables locales y las excepciones del método actual. (Se hereda de MethodBase).
Método públicoGetMethodImplementationFlagsDevuelve las marcas de implementación para el método. (Invalida a MethodBase.GetMethodImplementationFlags()).
Método públicoGetModuleDevuelve una referencia al módulo que contiene este método.
Método públicoGetParametersDevuelve los parámetros de este método. (Invalida a MethodBase.GetParameters()).
Método públicoGetTokenDevuelve MethodToken que representa al símbolo (token) para este método.
Método públicoGetType Obtiene el Type de la instancia actual. (Se hereda de Object).
Método públicoInvoke(Object, Object[])Invoca el método o constructor representado por la instancia actual, utilizando los parámetros especificados. (Se hereda de MethodBase).
Método públicoInvoke(Object, BindingFlags, Binder, Object[], CultureInfo)Invoca dinámicamente al método que refleja esta instancia sobre el objeto dado, pasando los parámetros especificados y considerando las restricciones del enlazador dado. (Invalida a MethodBase.Invoke(Object, BindingFlags, Binder, Object[], CultureInfo)).
Método públicoIsDefinedComprueba si se ha definido el tipo de atributo personalizado especificado. (Invalida a MemberInfo.IsDefined(Type, Boolean)).
Método públicoMakeGenericMethodDevuelve un método genérico construido a partir de la actual definición de método genérico utilizando los argumentos de tipo genérico especificados. (Invalida a MethodInfo.MakeGenericMethod(Type[])).
Método públicoSetCustomAttribute(CustomAttributeBuilder)Establece un atributo personalizado mediante un generador de atributos personalizados.
Método públicoSetCustomAttribute(ConstructorInfo, Byte[])Establece un atributo personalizado mediante un objeto binario de atributo especificado y personalizado.
Método públicoSetImplementationFlagsEstablece las marcas de implementación para este método.
Método públicoSetMarshal Obsoleta. Establece la información de cálculo de referencias para el tipo de valor devuelto de este método.
Método públicoSetMethodBodyCrea el cuerpo del método mediante una matriz de bytes especificada de las instrucciones del Lenguaje intermedio de Microsoft (MSIL).
Método públicoSetParametersEstablece el número y los tipos de parámetros de un método.
Método públicoSetReturnTypeEstablece el tipo de valor devuelto del método.
Método públicoSetSignatureEstablece la firma del método, incluidos el tipo de valor devuelto, los tipos de parámetro así como los modificadores personalizados necesarios y opcionales del tipo de valor devuelto y de los tipos de parámetro.
Método públicoSetSymCustomAttributeEstablece un atributo personalizado simbólico mediante un objeto binario.
Método públicoToStringDevuelve la instancia MethodBuilder como una cadena. (Invalida a Object.ToString()).
Arriba

  NombreDescripción
Método de extensión públicoGetCustomAttribute(Type)Sobrecargado. Recupera un atributo personalizado de un tipo especificado que se aplica a un miembro concreto. (Definido por CustomAttributeExtensions).
Método de extensión públicoGetCustomAttribute(Type, Boolean)Sobrecargado. Recupera un atributo personalizado de un tipo especificado que se aplica a un miembro concreto y, opcionalmente, inspecciona los antecesores de dicho miembro. (Definido por CustomAttributeExtensions).
Método de extensión públicoGetCustomAttribute<T>()Sobrecargado. Recupera un atributo personalizado de un tipo especificado que se aplica a un miembro concreto. (Definido por CustomAttributeExtensions).
Método de extensión públicoGetCustomAttribute<T>(Boolean)Sobrecargado. Recupera un atributo personalizado de un tipo especificado que se aplica a un miembro concreto y, opcionalmente, inspecciona los antecesores de dicho miembro. (Definido por CustomAttributeExtensions).
Método de extensión públicoGetCustomAttributes()Sobrecargado. Recupera una colección de atributos personalizados que se aplican a un miembro especificado. (Definido por CustomAttributeExtensions).
Método de extensión públicoGetCustomAttributes(Type)Sobrecargado. Recupera una colección de atributos personalizados de un tipo especificado que se aplican a un miembro concreto. (Definido por CustomAttributeExtensions).
Método de extensión públicoGetCustomAttributes<T>()Sobrecargado. Recupera una colección de atributos personalizados de un tipo especificado que se aplican a un miembro concreto. (Definido por CustomAttributeExtensions).
Método de extensión públicoGetCustomAttributes<T>(Boolean)Sobrecargado. Recupera una colección de atributos personalizados de un tipo especificado que se aplican a un miembro concreto y, opcionalmente, inspecciona los antecesores de dicho miembro. (Definido por CustomAttributeExtensions).
Método de extensión públicoGetRuntimeBaseDefinitionRecupera un objeto que representa el método especificado en la clase base directa o indirecta donde el método se declaró por primera vez. (Definido por RuntimeReflectionExtensions).
Método de extensión públicoIsDefinedIndica si se deben aplicar atributos personalizados de un tipo especificado a un miembro especificado. (Definido por CustomAttributeExtensions).
Arriba

  NombreDescripción
Implementación explícita de interfacesMétodo privado_MemberInfo.GetIDsOfNamesAsigna un conjunto de nombres a un conjunto correspondiente de identificadores de envío. (Se hereda de MemberInfo).
Implementación explícita de interfacesMétodo privado_MemberInfo.GetTypeObjeto Type que representa la clase MemberInfo. (Se hereda de MemberInfo).
Implementación explícita de interfacesMétodo privado_MemberInfo.GetTypeInfoRecupera la información de tipo de un objeto, que se puede utilizar después para obtener la información de tipo de una interfaz. (Se hereda de MemberInfo).
Implementación explícita de interfacesMétodo privado_MemberInfo.GetTypeInfoCount

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

(Se hereda de MemberInfo).
Implementación explícita de interfacesMétodo privado_MemberInfo.InvokeProporciona acceso a las propiedades y los métodos expuestos por un objeto. (Se hereda de MemberInfo).
Implementación explícita de interfacesMétodo privado_MethodBase.GetIDsOfNamesAsigna un conjunto de nombres a un conjunto correspondiente de identificadores de envío. (Se hereda de MethodBase).
Implementación explícita de interfacesMétodo privado_MethodBase.GetTypePara obtener una descripción de este miembro, vea _MethodBase.GetType. (Se hereda de MethodBase).
Implementación explícita de interfacesMétodo privado_MethodBase.GetTypeInfoRecupera la información de tipo de un objeto, que se puede utilizar después para obtener la información de tipo de una interfaz. (Se hereda de MethodBase).
Implementación explícita de interfacesMétodo privado_MethodBase.GetTypeInfoCount

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

(Se hereda de MethodBase).
Implementación explícita de interfacesMétodo privado_MethodBase.InvokeProporciona acceso a las propiedades y los métodos expuestos por un objeto. (Se hereda de MethodBase).
Implementación explícita de interfacesPropiedad privada_MethodBase.IsAbstractPara obtener una descripción de este miembro, vea _MethodBase.IsAbstract. (Se hereda de MethodBase).
Implementación explícita de interfacesPropiedad privada_MethodBase.IsAssemblyPara obtener una descripción de este miembro, vea _MethodBase.IsAssembly. (Se hereda de MethodBase).
Implementación explícita de interfacesPropiedad privada_MethodBase.IsConstructorPara obtener una descripción de este miembro, vea _MethodBase.IsConstructor. (Se hereda de MethodBase).
Implementación explícita de interfacesPropiedad privada_MethodBase.IsFamilyPara obtener una descripción de este miembro, vea _MethodBase.IsFamily. (Se hereda de MethodBase).
Implementación explícita de interfacesPropiedad privada_MethodBase.IsFamilyAndAssemblyPara obtener una descripción de este miembro, vea _MethodBase.IsFamilyAndAssembly. (Se hereda de MethodBase).
Implementación explícita de interfacesPropiedad privada_MethodBase.IsFamilyOrAssemblyPara obtener una descripción de este miembro, vea _MethodBase.IsFamilyOrAssembly. (Se hereda de MethodBase).
Implementación explícita de interfacesPropiedad privada_MethodBase.IsFinalPara obtener una descripción de este miembro, vea _MethodBase.IsFinal. (Se hereda de MethodBase).
Implementación explícita de interfacesPropiedad privada_MethodBase.IsHideBySigPara obtener una descripción de este miembro, vea _MethodBase.IsHideBySig. (Se hereda de MethodBase).
Implementación explícita de interfacesPropiedad privada_MethodBase.IsPrivatePara obtener una descripción de este miembro, vea _MethodBase.IsPrivate. (Se hereda de MethodBase).
Implementación explícita de interfacesPropiedad privada_MethodBase.IsPublicPara obtener una descripción de este miembro, vea _MethodBase.IsPublic. (Se hereda de MethodBase).
Implementación explícita de interfacesPropiedad privada_MethodBase.IsSpecialNamePara obtener una descripción de este miembro, vea _MethodBase.IsSpecialName. (Se hereda de MethodBase).
Implementación explícita de interfacesPropiedad privada_MethodBase.IsStaticPara obtener una descripción de este miembro, vea _MethodBase.IsStatic. (Se hereda de MethodBase).
Implementación explícita de interfacesPropiedad privada_MethodBase.IsVirtualPara obtener una descripción de este miembro, vea _MethodBase.IsVirtual. (Se hereda de MethodBase).
Implementación explícita de interfacesMétodo privado_MethodBuilder.GetIDsOfNamesAsigna un conjunto de nombres a un conjunto correspondiente de identificadores de envío.
Implementación explícita de interfacesMétodo privado_MethodBuilder.GetTypeInfoRecupera la información de tipo de un objeto, que se puede utilizar después para obtener la información de tipo de una interfaz.
Implementación explícita de interfacesMétodo privado_MethodBuilder.GetTypeInfoCount

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

Implementación explícita de interfacesMétodo privado_MethodBuilder.InvokeProporciona acceso a las propiedades y los métodos expuestos por un objeto.
Implementación explícita de interfacesMétodo privado_MethodInfo.GetIDsOfNamesAsigna un conjunto de nombres a un conjunto correspondiente de identificadores de envío. (Se hereda de MethodInfo).
Implementación explícita de interfacesMétodo privado_MethodInfo.GetTypeProporciona acceso al método GetType desde COM. (Se hereda de MethodInfo).
Implementación explícita de interfacesMétodo privado_MethodInfo.GetTypeInfoObtiene la información de tipos de un objeto, que puede utilizarse para obtener la información de tipos de una interfaz. (Se hereda de MethodInfo).
Implementación explícita de interfacesMétodo privado_MethodInfo.GetTypeInfoCount

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

(Se hereda de MethodInfo).
Implementación explícita de interfacesMétodo privado_MethodInfo.InvokeProporciona acceso a las propiedades y los métodos expuestos por un objeto. (Se hereda de MethodInfo).
Arriba

MethodBuilder se utiliza para describir completamente un método en el Lenguaje intermedio de Microsoft (MSIL), incluido el nombre, los atributos, la firma y el cuerpo del método. Se utiliza junto con la clase TypeBuilder para crear clases en tiempo de ejecución.

NotaNota

El atributo HostProtectionAttribute aplicado a este tipo o miembro tiene el siguiente valor de propiedad Resources: MayLeakOnAbort. El atributo HostProtectionAttribute no afecta a las aplicaciones de escritorio (que normalmente se inician haciendo doble clic en un icono, escribiendo un comando o introduciendo una dirección URL en el explorador). Para obtener más información, vea la clase HostProtectionAttribute o Programación en SQL Server y atributos de protección de host.

A continuación, se incluye un ejemplo en el que se utiliza la clase MethodBuilder para crear un método en un tipo dinámico.



using System;
using System.Reflection;
using System.Reflection.Emit;

class DemoMethodBuilder 
{
    public static void AddMethodDynamically (TypeBuilder myTypeBld,
                                             string mthdName,
                                             Type[] mthdParams, 
                                             Type returnType,
                                             string mthdAction) 
    {

        MethodBuilder myMthdBld = myTypeBld.DefineMethod(
                                             mthdName,
                                             MethodAttributes.Public |
                                             MethodAttributes.Static,
                                             returnType,
                                             mthdParams);        

        ILGenerator ILout = myMthdBld.GetILGenerator();

        int numParams = mthdParams.Length;

        for (byte x=0; x < numParams; x++) 
        {
            ILout.Emit(OpCodes.Ldarg_S, x);
        }

        if (numParams > 1) 
        {
            for (int y=0; y<(numParams-1); y++) 
            {
                switch (mthdAction) 
                {
                    case "A": ILout.Emit(OpCodes.Add);
                              break;
                    case "M": ILout.Emit(OpCodes.Mul);
                              break;
                    default: ILout.Emit(OpCodes.Add);
                              break;
                }
            }
        }
        ILout.Emit(OpCodes.Ret);
    }

    public static void Main()
    {
        AppDomain myDomain = AppDomain.CurrentDomain;
        AssemblyName asmName = new AssemblyName();
        asmName.Name = "MyDynamicAsm";

        AssemblyBuilder myAsmBuilder = myDomain.DefineDynamicAssembly(
                                       asmName, 
                                       AssemblyBuilderAccess.RunAndSave);

        ModuleBuilder myModule = myAsmBuilder.DefineDynamicModule("MyDynamicAsm",
                                                                  "MyDynamicAsm.dll");

        TypeBuilder myTypeBld = myModule.DefineType("MyDynamicType",
                                                    TypeAttributes.Public);           

        // Get info from the user to build the method dynamically.
        Console.WriteLine("Let's build a simple method dynamically!");
        Console.WriteLine("Please enter a few numbers, separated by spaces.");
        string inputNums = Console.ReadLine();
        Console.Write("Do you want to [A]dd (default) or [M]ultiply these numbers? ");
        string myMthdAction = Console.ReadLine().ToUpper();
        Console.Write("Lastly, what do you want to name your new dynamic method? ");
        string myMthdName = Console.ReadLine();

        // Process inputNums into an array and create a corresponding Type array 
        int index = 0;
        string[] inputNumsList = inputNums.Split();

        Type[] myMthdParams = new Type[inputNumsList.Length];
        object[] inputValsList = new object[inputNumsList.Length];


        foreach (string inputNum in inputNumsList) 
        {
            inputValsList[index] = (object)Convert.ToInt32(inputNum);
                myMthdParams[index] = typeof(int);
                index++;
        } 

        // Now, call the method building method with the parameters, passing the 
        // TypeBuilder by reference.
        AddMethodDynamically(myTypeBld,
                             myMthdName,
                             myMthdParams,
                             typeof(int),        
                             myMthdAction);

        Type myType = myTypeBld.CreateType();

        Console.WriteLine("---");
        Console.WriteLine("The result of {0} the inputted values is: {1}",
                          ((myMthdAction == "M") ? "multiplying" : "adding"),
                          myType.InvokeMember(myMthdName,
                          BindingFlags.InvokeMethod | BindingFlags.Public |
                          BindingFlags.Static,
                          null,
                          null,
                          inputValsList));
        Console.WriteLine("---");

        // Let's take a look at the method we created.
        // If you are interested in seeing the MSIL generated dynamically for the method
        // your program generated, change to the directory where you ran the compiled
        // code sample and type "ildasm MyDynamicAsm.dll" at the prompt. When the list
        // of manifest contents appears, click on "MyDynamicType" and then on the name of
        // of the method you provided during execution.

        myAsmBuilder.Save("MyDynamicAsm.dll");

        MethodInfo myMthdInfo = myType.GetMethod(myMthdName);
        Console.WriteLine("Your Dynamic Method: {0};", myMthdInfo.ToString());    
    }
}


.NET Framework

Compatible con: 4.5.2, 4.5.1, 4.5, 4, 3.5, 3.0, 2.0, 1.1, 1.0

.NET Framework Client Profile

Compatible con: 4, 3.5 SP1

Windows Phone 8.1, Windows Phone 8, Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (no se admite el rol Server Core), Windows Server 2008 R2 (se admite el rol Server Core con SP1 o versiones posteriores; no se admite Itanium)

.NET Framework no admite todas las versiones de todas las plataformas. Para obtener una lista de las versiones compatibles, vea Requisitos de sistema de .NET Framework.

Todos los miembros static (Shared en Visual Basic) públicos de este tipo son seguros para la ejecución de subprocesos. No se garantiza que los miembros de instancias sean seguros para la ejecución de subprocesos.

Adiciones de comunidad

AGREGAR
Mostrar:
© 2014 Microsoft