Type.FilterNameIgnoreCase Campo

Definizione

Rappresenta il filtro membro usato sui nomi che non fa distinzione tra maiuscole e minuscole. Questo campo è di sola lettura.

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

Valore del campo

Esempio

L'esempio seguente ottiene il MemberFilter delegato, lo passa come parametro al FindMembers metodo e visualizza i metodi e i relativi attributi della String classe che iniziano con la lettera "c", ignorando il caso.

using namespace System;
using namespace System::Collections;
using namespace System::Reflection;
using namespace System::Security;
int main()
{
   try
   {
      MemberFilter^ myFilter = Type::FilterNameIgnoreCase;
      Type^ myType = System::String::typeid;
      array<MemberInfo^>^myMemberinfo1 = myType->FindMembers( static_cast<MemberTypes>(MemberTypes::Constructor | MemberTypes::Method), static_cast<BindingFlags>(BindingFlags::Public | BindingFlags::Static | BindingFlags::Instance), myFilter, "C*" );
      IEnumerator^ myEnum = myMemberinfo1->GetEnumerator();
      while ( myEnum->MoveNext() )
      {
         MemberInfo^ myMemberinfo2 = safe_cast<MemberInfo^>(myEnum->Current);
         Console::Write( "\n {0}", myMemberinfo2->Name );
         MemberTypes Mymembertypes = myMemberinfo2->MemberType;
         Console::WriteLine( " is a {0}", Mymembertypes );
      }
   }
   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 MyFilterNameIgnoreCaseSample
{
    public static void Main()
    {
        try
        {		
            MemberFilter myFilter = Type.FilterNameIgnoreCase;
            Type myType = typeof(System.String);
            MemberInfo[] myMemberinfo1 = myType.FindMembers(MemberTypes.Constructor
                |MemberTypes.Method, BindingFlags.Public | BindingFlags.Static |
                BindingFlags.Instance, myFilter, "C*");
            foreach (MemberInfo myMemberinfo2 in myMemberinfo1)
            {
                Console.Write("\n" + myMemberinfo2.Name);
                MemberTypes Mymembertypes = myMemberinfo2.MemberType;
                Console.WriteLine(" is a " + Mymembertypes.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);
        }
    }
}
open System
open System.Reflection
open System.Security

try
    let myFilter = Type.FilterNameIgnoreCase
    let myType = typeof<string>
    let myMemberinfo1 = 
        myType.FindMembers(MemberTypes.Constructor ||| MemberTypes.Method, BindingFlags.Public ||| BindingFlags.Static ||| BindingFlags.Instance, myFilter, "C*")
    for myMemberinfo2 in myMemberinfo1 do
        printf "\n{myMemberinfo2.Name}"
        myMemberinfo2.MemberType
        |> printfn " is a %O"
with
| :? ArgumentNullException as e ->
    printf $"ArgumentNullException : {e.Message}"
| :? SecurityException as e ->
    printf $"SecurityException : {e.Message}"
| e ->
    printf $"Exception : {e.Message}"
Imports System.Reflection
Imports System.Security

Public Class MyFilterNameIgnoreCaseSample
    Public Shared Sub Main()
        Try
            Dim myFilter As MemberFilter = Type.FilterNameIgnoreCase
            Dim myType As Type = GetType(System.String)
            Dim myMemberinfo1 As MemberInfo() = myType.FindMembers(MemberTypes.Constructor Or MemberTypes.Method, BindingFlags.Public Or BindingFlags.Static Or BindingFlags.Instance, myFilter, "C*")
            Dim myMemberinfo2 As MemberInfo
            For Each myMemberinfo2 In myMemberinfo1
                Console.Write((ControlChars.NewLine + myMemberinfo2.Name))
                Dim Mymembertypes As MemberTypes = myMemberinfo2.MemberType
                Console.WriteLine((" is a " + Mymembertypes.ToString()))
            Next myMemberinfo2
        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

Commenti

Questo campo contiene un riferimento al delegato utilizzato dal FindMembers metodo . Il metodo incapsulato da questo delegato accetta due parametri: il primo è un MemberInfo oggetto e il secondo è .Object Il metodo determina se l'oggetto MemberInfo corrisponde ai criteri specificati da Object. Viene Object assegnato un valore stringa, che può includere un carattere jolly finale "*". È supportata solo la corrispondenza di stringhe con caratteri jolly.

Ad esempio, può Object essere assegnato il valore "ByTe*". In tal caso, quando il FilterName delegato viene richiamato, restituirà true solo se il metodo rappresentato dall'oggetto MemberInfo ha un nome che inizia con "byte", ignorando la distinzione tra maiuscole e minuscole.

Si applica a

Vedi anche