Leer en inglés

Compartir a través de


Switch.GetSupportedAttributes Método

Definición

Obtiene los atributos personalizados que admite el modificador.

C#
protected virtual string[]? GetSupportedAttributes ();
C#
protected virtual string[] GetSupportedAttributes ();
C#
protected internal virtual string[] GetSupportedAttributes ();

Devoluciones

String[]

Una matriz de cadena que contiene los nombres de los atributos personalizados que admite el modificador, o bien, null si no admite ningún atributo personalizado.

Ejemplos

En el ejemplo de código siguiente se muestra una invalidación del GetSupportedAttributes método para un modificador personalizado.

C#
public class MySourceSwitch : SourceSwitch
{
    int sourceAttribute = 0;
    public MySourceSwitch(string n) : base(n) { }
    public int CustomSourceSwitchAttribute
    {
        get
        {
            foreach (DictionaryEntry de in this.Attributes)
                if (de.Key.ToString().ToLower() == "customsourceswitchattribute")
                    sourceAttribute = (int)de.Value;
            return sourceAttribute;
        }
        set { sourceAttribute = (int)value; }
    }

    protected override string[] GetSupportedAttributes()
    {
        return new string[] { "customsourceSwitchattribute" };
    }
}

Comentarios

La implementación predeterminada del GetSupportedAttributes método devuelve null. Si se agrega un modificador en un archivo de configuración y se especifican atributos personalizados que no se incluyen en la matriz de cadenas devuelta por GetSupportedAttributes, se produce una ConfigurationException excepción cuando se carga el modificador.

Notas a los desarrolladores de herederos

Al heredar de la Switch clase o de una clase derivada, puede invalidar el GetSupportedAttributes() método para proporcionar atributos personalizados para la clase.

Se aplica a

Producto Versiones
.NET Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 2.0, 2.1