Type.FilterAttribute Feld

Definition

Stellt den für Attribute verwendeten Memberfilter dar. Dieses Feld ist schreibgeschützt.

public: static initonly System::Reflection::MemberFilter ^ FilterAttribute;
public static readonly System.Reflection.MemberFilter FilterAttribute;
 staticval mutable FilterAttribute : System.Reflection.MemberFilter
Public Shared ReadOnly FilterAttribute As MemberFilter 

Feldwert

MemberFilter

Beispiele

Das folgende Beispiel ruft den Delegaten ab, übergibt ihn als Parameter an die -Methode und zeigt die angegebenen FilterAttribute Member und ihre Attribute FindMembers an.

using namespace System;
using namespace System::Collections;
using namespace System::Reflection;
using namespace System::Security;
int main()
{
   try
   {
      MemberFilter^ myFilter = Type::FilterAttribute;
      Type^ myType = System::String::typeid;
      array<MemberInfo^>^myMemberInfoArray = myType->FindMembers( static_cast<MemberTypes>(MemberTypes::Constructor | MemberTypes::Method), static_cast<BindingFlags>(BindingFlags::Public | BindingFlags::Static | BindingFlags::Instance), myFilter, MethodAttributes::SpecialName );
      IEnumerator^ myEnum = myMemberInfoArray->GetEnumerator();
      while ( myEnum->MoveNext() )
      {
         MemberInfo^ myMemberinfo = safe_cast<MemberInfo^>(myEnum->Current);
         Console::Write( "\n {0}", myMemberinfo->Name );
         Console::Write( " is a {0}", myMemberinfo->MemberType );
      }
   }
   catch ( ArgumentNullException^ e ) 
   {
      Console::Write( "ArgumentNullException : {0}", e->Message );
   }
   catch ( SecurityException^ e ) 
   {
      Console::Write( "SecurityException : {0}", e->Message );
   }
   catch ( Exception^ e ) 
   {
      Console::Write( "Exception : {0}", e->Message );
   }

}
using System;
using System.Reflection;
using System.Security;

public class MyFilterAttributeSample
{
    public static void Main()
    {
        try
        {
            MemberFilter myFilter = Type.FilterAttribute;
            Type myType = typeof(System.String);
            MemberInfo[] myMemberInfoArray = myType.FindMembers(MemberTypes.Constructor
                |MemberTypes.Method, BindingFlags.Public | BindingFlags.Static |
                BindingFlags.Instance, myFilter, MethodAttributes.SpecialName);
            foreach (MemberInfo myMemberinfo in myMemberInfoArray)
            {
                Console.Write ("\n" + myMemberinfo.Name);
                Console.Write (" is a " + myMemberinfo.MemberType.ToString());
            }
        }
        catch(ArgumentNullException e)
        {
            Console.Write("ArgumentNullException : " + e.Message);
        }
        catch(SecurityException e)
        {
            Console.Write("SecurityException : " + e.Message);
        }
        catch(Exception e)
        {
            Console.Write("Exception :" + e.Message);
        }
    }	
}
Imports System.Reflection
Imports System.Security

Public Class MyFilterAttributeSample

    Public Shared Sub Main()
        Try
            Dim myFilter As MemberFilter = Type.FilterAttribute
            Dim myType As Type = GetType(System.String)
            Dim myMemberInfoArray As MemberInfo() = myType.FindMembers(MemberTypes.Constructor Or MemberTypes.Method, BindingFlags.Public Or BindingFlags.Static Or BindingFlags.Instance, myFilter, MethodAttributes.SpecialName)
            Dim myMemberinfo As MemberInfo
            For Each myMemberinfo In myMemberInfoArray
                Console.Write(ControlChars.newline + myMemberinfo.Name)
                Console.Write(" is a " + myMemberinfo.MemberType.ToString())
            Next myMemberinfo

        Catch e As ArgumentNullException
            Console.Write("ArgumentNullException : " + e.Message.ToString())
        Catch e As SecurityException
            Console.Write("SecurityException : " + e.Message.ToString())
        Catch e As Exception
            Console.Write("Exception :" + e.Message.ToString())
        End Try
    End Sub
End Class

Hinweise

Dieses Feld enthält einen Verweis auf den Delegaten, der von der -Methode FindMembers verwendet wird. Die von diesem Delegaten gekapselte Methode verwendet zwei Parameter: der erste ist ein -Objekt und der MemberInfo zweite ein Object . Die -Methode bestimmt, ob MemberInfo das -Objekt den von angegebenen Kriterien Object entspricht. Dem kann der Wert eines der Felder in den Klassen Object FieldAttributes , oder zugewiesen MethodAttributes MethodImplAttributes werden.

Beispielsweise kann dem der Wert eines Felds zugewiesen Object werden, z. B. FieldAttributes Öffentlich. In diesem Fall gibt der Delegat nur dann zurück, wenn die durch das -Objekt dargestellte Methode in den Metadaten mit dem Public FilterAttribute true Field-Attribut MemberInfo verziert ist.

Gilt für

Siehe auch