Posiadam pewien typ (obiekt Type
). Trzeba sprawdzić, czy ten typ ma interfejs IList.
Jak mogę to zrobić?Jak sprawdzić, czy bieżący typ (obiekt typu) wymagał interfejsu (lub typu nadrzędnego)?
7
A
Odpowiedz
13
Zakładając, że obiekt type
z typem System.Type
(co zebrałem z OP),
Type type = ...;
typeof(IList).IsAssignableFrom(type)
7
Można użyć metody Type.GetInterface.
if (object.GetType().GetInterface("IList") != null)
{
// object implements IList
}
3
Myślę, że najprostszym sposobem jest użycie IsAssignableFrom
.
Więc z przykładu:
Type customListType = new YourCustomListType().GetType();
if (typeof(IList).IsAssignableFrom(customListType))
{
//Will be true if "YourCustomListType : IList"
}
0
Można użyć is
do sprawdzenia:
MyType obj = new MyType();
if (obj is IList)
{
// obj implements IList
}
Powiązane problemy
- 1. Jak sprawdzić, czy obiekt jest określonego typu?
- 2. Jak sprawdzić, czy obiekt jest tablicą określonego typu?
- 3. Jak mogę sprawdzić, czy typ jest podtypem typu w Pythonie?
- 4. Jak sprawdzić, czy lista zawiera obiekt określonego typu? C#
- 5. Jak sprawdzić, czy obiekt nie jest określonego typu?
- 6. Python: jak mogę sprawdzić, czy obiekt jest typu datetime.date?
- 7. java - Jak sprawdzić, czy mój obiekt jest typu danej klasy?
- 8. Jak ustalić, czy obiekt implementuje IDictionary lub IList dowolnego typu
- 9. Określanie, czy typ jest podklasą typu ogólnego
- 10. Jak sprawdzić, czy mój bieżący wątek jest wątkiem interfejsu użytkownika?
- 11. Obsada typu rodzajowego do interfejsu typu ograniczenie
- 12. Jak dynamicznie rzutować obiekt typu ciąg do obiektu typu T
- 13. Pobieranie typu niezamkniętego typu ogólnego zamykającego typ ogólny
- 14. Czy typ wejścia GraphQL może dziedziczyć z innego typu lub interfejsu?
- 15. Jak przesłać obiekt do jego rzeczywistego typu?
- 16. Jak zdefiniować obiekt typu obiektów w maszynopisie
- 17. typ ocaml ramach typu
- 18. Jak sprawdzić, czy ogólny parametr typu jest zerowalny?
- 19. Obiekt typu "System.String" nie można przekonwertować na typ "Xamarin.Forms.View"
- 20. Błąd wnioskowania typu 8 Java, przypisanie wyrażenia lambda do zmiennej typu Obiekt
- 21. Znajdowanie typu betonu za instancją interfejsu
- 22. F # wdrożenie metody interfejsu z typu ograniczenia
- 23. Podpowiedź typu PHP: obsługiwana tablica, obiekt NIE?
- 24. Jednostka obiektu typu ObjectUsage Obiekt
- 25. Get typu Network
- 26. Sprawdzanie typu pochodnego (C++)
- 27. C++ sprawdzić czy konstruktor zawiera parametr danego typu
- 28. Jak zmusić obiekt listy do typu „double”
- 29. W jQuery, jak mogę sprawdzić, czy bieżący obiekt jest ukryty, czy nie?
- 30. SML Jak sprawdzić typ zmiennej?
+1 Odpowiedź na moje pytanie !!! – IAbstract
działa to dla dowolnego interfejsu? – DevDave