DynamicMethod.ReturnTypeCustomAttributes Propiedad

Definición

Obtiene los atributos personalizados del tipo de valor devuelto para el método dinámico.

public:
 virtual property System::Reflection::ICustomAttributeProvider ^ ReturnTypeCustomAttributes { System::Reflection::ICustomAttributeProvider ^ get(); };
public override System.Reflection.ICustomAttributeProvider ReturnTypeCustomAttributes { get; }
member this.ReturnTypeCustomAttributes : System.Reflection.ICustomAttributeProvider
Public Overrides ReadOnly Property ReturnTypeCustomAttributes As ICustomAttributeProvider

Valor de propiedad

ICustomAttributeProvider que representa los atributos personalizados del tipo de valor devuelto para el método dinámico.

Ejemplos

En el ejemplo de código siguiente se muestra cómo mostrar los atributos personalizados del tipo de valor devuelto de un método dinámico. Este ejemplo de código es parte de un ejemplo más grande proporcionado para la clase DynamicMethod.

// ReturnTypeCustomAttributes returns an ICustomeAttributeProvider
// that can be used to enumerate the custom attributes of the
// return value. At present, there is no way to set such custom
// attributes, so the list is empty.
if (hello->ReturnType == Void::typeid)
{
    Console::WriteLine("The method has no return type.");
}
else
{
    ICustomAttributeProvider^ caProvider = hello->ReturnTypeCustomAttributes;
    array<Object^>^ returnAttributes = caProvider->GetCustomAttributes(true);
    if (returnAttributes->Length == 0)
    {
        Console::WriteLine("\r\nThe return type has no custom attributes.");
    }
    else
    {
        Console::WriteLine("\r\nThe return type has the following custom attributes:");
        for each (Object^ attr in returnAttributes)
        {
            Console::WriteLine("\t{0}", attr->ToString());
        }
    }
}
// ReturnTypeCustomAttributes returns an ICustomeAttributeProvider
// that can be used to enumerate the custom attributes of the
// return value. At present, there is no way to set such custom
// attributes, so the list is empty.
if (hello.ReturnType == typeof(void))
{
    Console.WriteLine("The method has no return type.");
}
else
{
    ICustomAttributeProvider caProvider = hello.ReturnTypeCustomAttributes;
    object[] returnAttributes = caProvider.GetCustomAttributes(true);
    if (returnAttributes.Length == 0)
    {
        Console.WriteLine("\r\nThe return type has no custom attributes.");
    }
    else
    {
        Console.WriteLine("\r\nThe return type has the following custom attributes:");
        foreach( object attr in returnAttributes )
        {
            Console.WriteLine("\t{0}", attr.ToString());
        }
    }
}
' ReturnTypeCustomAttributes returns an ICustomeAttributeProvider
' that can be used to enumerate the custom attributes of the
' return value. At present, there is no way to set such custom
' attributes, so the list is empty.
If hello.ReturnType Is GetType(System.Void) Then
    Console.WriteLine("The method has no return type.")
Else
    Dim caProvider As ICustomAttributeProvider = _
        hello.ReturnTypeCustomAttributes
    Dim returnAttributes() As Object = _
        caProvider.GetCustomAttributes(True)
    If returnAttributes.Length = 0 Then
        Console.WriteLine(vbCrLf _
            & "The return type has no custom attributes.")
    Else
        Console.WriteLine(vbCrLf _
            & "The return type has the following custom attributes:")
        For Each attr As Object In returnAttributes
            Console.WriteLine(vbTab & attr.ToString())
        Next attr
    End If
End If

Comentarios

Los atributos personalizados no se admiten en el tipo de valor devuelto de un método dinámico, por lo que la matriz de atributos personalizados devueltos por el GetCustomAttributes método siempre está vacía.

Se aplica a

Consulte también