Ten artykuł został przetłumaczony przez maszynę. Aby wyświetlić jego treść w języku angielskim, zaznacz pole wyboru Angielski. Możesz też wyświetlić angielski tekst w okienku wyskakującym, przesuwając wskaźnik myszy nad konkretny tekst”.
Tłumaczenie
Angielski

Metoda Type.GetInterface — (String)

.NET Framework (current version)
 

Data opublikowania: październik 2016

Wyszukuje w interfejsie o określonej nazwie.

Przestrzeń nazw:   System
Zestaw:  mscorlib (w mscorlib.dll)

public Type GetInterface(
	string name
)

Parametry

name
Type: System.String

Ciąg zawierający nazwę interfejsu pobrać. Interfejsy ogólne to zniekształcone nazwy.

Wartość zwracana

Type: System.Type

Obiekt reprezentujący interfejs o określonej nazwie zaimplementowana lub dziedziczone przez bieżącą Type, jeśli znaleziono; w przeciwnym razie null.

Exception Condition
ArgumentNullException

name jest null.

AmbiguousMatchException

Bieżący Type reprezentuje typ, który implementuje ten interfejs ogólny z argumentami innego typu.

Wyszukiwanie name jest uwzględniana wielkość liter.

Jeśli bieżący Type reprezentuje zbudowany typ ogólny, Metoda ta zwraca Type z parametrami typu zastąpionymi przez odpowiednie argumenty typu.

Jeśli bieżący Type reprezentuje parametr typu w definicji typu ogólnego lub metody rodzajowej, Metoda ta wyszukuje ograniczenia interfejsu i wszystkie interfejsy odziedziczone ograniczenia klasy lub interfejsu.

System_CAPS_noteUwaga

W przypadku ogólnych interfejsów name parametr jest zniekształcone nazwy, kończąc akcent (') i liczby parametrów typu. Dotyczy to zarówno definicje interfejsu ogólnego i skonstruowany interfejsach. Na przykład, aby znaleźć IExample<T> (IExample(Of T) w języku Visual Basic) lub IExample<string> (IExample(Of String) w języku Visual Basic), wyszukaj "IExample`1".

Poniższy przykład kodu wykorzystuje GetInterface(String) metodę wyszukiwania Hashtable klasy dla IDeserializationCallback interfejs i listy metod interfejsu.

Przykład kodu ilustruje też GetInterface(String, Boolean) przeciążenia metody i GetInterfaceMap metody.

public static void Main()
{
    Hashtable hashtableObj = new Hashtable();
    Type objType = hashtableObj.GetType();
    MemberInfo[] arrayMemberInfo;
    MethodInfo[] arrayMethodInfo;
    try
    {   
        // Get the methods implemented in 'IDeserializationCallback' interface.
        arrayMethodInfo =objType.GetInterface("IDeserializationCallback").GetMethods();
        Console.WriteLine ("\nMethods of 'IDeserializationCallback' Interface :");
        for(int index=0;index < arrayMethodInfo.Length ;index++)
            Console.WriteLine (arrayMethodInfo[index].ToString() ); 

        // Get FullName for interface by using Ignore case search.
        Console.WriteLine ("\nMethods of 'IEnumerable' Interface");
        arrayMethodInfo = objType.GetInterface("ienumerable",true).GetMethods();
        for(int index=0;index < arrayMethodInfo.Length ;index++)
           Console.WriteLine (arrayMethodInfo[index].ToString()); 

        //Get the Interface methods for 'IDictionary' interface
        InterfaceMapping interfaceMappingObj;
        interfaceMappingObj = objType.GetInterfaceMap(typeof(IDictionary));
        arrayMemberInfo = interfaceMappingObj.InterfaceMethods;
        Console.WriteLine ("\nHashtable class Implements the following IDictionary Interface methods :");
        for(int index=0; index < arrayMemberInfo.Length; index++)
            Console.WriteLine (arrayMemberInfo[index].ToString() ); 
    }
    catch (Exception e)
    {
        Console.WriteLine ("Exception : " + e.ToString());            
    }                 
}

.NET Framework
Dostępne od 1.1
Powrót do początku
Pokaż: