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

Método Module.GetCustomAttributes (Type, Boolean)

 

Publicado: octubre de 2016

Obtiene los atributos personalizados del tipo especificado.

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

public virtual object[] GetCustomAttributes(
	Type attributeType,
	bool inherit
)

Parámetros

attributeType
Type: System.Type

El tipo de atributo para obtener.

inherit
Type: System.Boolean

Este argumento se omite para objetos de este tipo.

Valor devuelto

Type: System.Object[]

Matriz de tipo Object que contiene todos los atributos personalizados del tipo especificado.

Exception Condition
ArgumentNullException

El valor de attributeType es null.

ArgumentException

attributeType no es un objeto Type proporcionado por el tiempo de ejecución. Por ejemplo, attributeType es un objeto TypeBuilder.

El ejemplo siguiente muestra los nombres de módulo del tipo especificado que coinciden con los criterios de búsqueda especificados.

using System;
using System.Reflection;
//Define a module-level attribute.
[module: ReflectionModule_Examples.MySimpleAttribute("module-level")]
namespace ReflectionModule_Examples
{
    class MyMainClass
    {
        static void Main()
        {
            Module[] moduleArray;
            moduleArray = typeof(MyMainClass).Assembly.GetModules(false);
            // In a simple project with only one module, the module at index
            // 0 will be the module containing these classes.
            Module myModule = moduleArray[0];
            object[] attributes;
            //Get only MySimpleAttribute attributes for this module.
            attributes = myModule.GetCustomAttributes(
                myModule.GetType("ReflectionModule_Examples.MySimpleAttribute", false, false),
                true);
            foreach(Object o in attributes)
            {
                Console.WriteLine("Found this attribute on myModule: {0}", o.ToString());
            }
        }
    }

    // Define a very simple custom attribute
    [AttributeUsage(AttributeTargets.Class | AttributeTargets.Module)]
    public class MySimpleAttribute : Attribute
    {
        private string name;

        public MySimpleAttribute(string newName)
        {
            name = newName;
        }
    }
}

.NET Framework
Disponible desde 1.1
Silverlight
Disponible desde 2.0
Windows Phone Silverlight
Disponible desde 7.0
Volver al principio
Mostrar: