DynamicMethod.ReturnTypeCustomAttributes Property

Definition

Gets the custom attributes of the return type for the dynamic method.

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

Property Value

An ICustomAttributeProvider representing the custom attributes of the return type for the dynamic method.

Examples

The following code example shows how to display the custom attributes of the return type of a dynamic method. This code example is part of a larger example provided for the DynamicMethod class.

// 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

Remarks

Custom attributes are not supported on the return type of a dynamic method, so the array of custom attributes returned by the GetCustomAttributes method is always empty.

Applies to

See also