Type.FilterNameIgnoreCase Type.FilterNameIgnoreCase Type.FilterNameIgnoreCase Type.FilterNameIgnoreCase Field

Определение

Представляет фильтр членов без учета регистра, применяемый к именам.Represents the case-insensitive member filter used on names. Это поле доступно только для чтения.This field is read-only.

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 

Значение поля

Примеры

В следующем примере возвращается MemberFilter делегировать, передает его в качестве параметра FindMembers метод и отображает методы и их атрибуты String класс, который начинается с прописной или строчной буквы «c»,.The following example gets the MemberFilter delegate, passes it as a parameter to the FindMembers method, and displays the methods and their attributes of the String class that begin with the letter "c", disregarding the case.

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); 
        }
    }
}
Imports System
Imports System.Reflection
Imports System.Security
Imports Microsoft.VisualBasic

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 'Main
End Class 'MyFilterNameIgnoreCaseSample

Комментарии

Это поле хранит ссылку на делегат, используемый FindMembers метод.This field holds a reference to the delegate used by the FindMembers method. Метода, инкапсулируемого данным делегатом принимает два параметра: первый — MemberInfo объекта, а второй – Object.The method encapsulated by this delegate takes two parameters: the first is a MemberInfo object and the second is an Object. Этот метод определяет, является ли MemberInfo объект соответствует критериям, заданным Object.The method determines whether the MemberInfo object matches the criteria specified by the Object. Object Присваивается строковое значение, которое может содержать символ «*» подстановочный знак.The Object is assigned a string value, which may include a trailing "*" wildcard character. Поддерживается только конечный совпадение со строкой.Only wildcard end string matching is supported.

Например Object может быть присвоено значение «Байт *».For example, the Object may be assigned the value "ByTe*". В этом случае, когда FilterName делегат вызывается, он вернет значение true, только если метод, представленный MemberInfo объект имеет имя, которое начинается с «byte», без учета регистра.In that case, when the FilterName delegate is invoked, it will return true only if the method represented by the MemberInfo object has a name that begins with "byte", ignoring case.

Применяется к

Дополнительно