Tengo un tipo (objeto de Type
). Necesito comprobar que este tipo tiene interfaz IList.
¿Cómo puedo hacer esto?Cómo comprobar que el tipo actual (objeto de Tipo) tiene interfaz necesaria (o tipo principal)
7
A
Respuesta
13
Asumiendo que tiene un objeto type
con el tipo System.Type
(lo que he reunido de la OP),
Type type = ...;
typeof(IList).IsAssignableFrom(type)
7
Puede usar el método Type.GetInterface.
if (object.GetType().GetInterface("IList") != null)
{
// object implements IList
}
3
Creo que la forma más sencilla es utilizar IsAssignableFrom
.
Así que de su ejemplo:
Type customListType = new YourCustomListType().GetType();
if (typeof(IList).IsAssignableFrom(customListType))
{
//Will be true if "YourCustomListType : IList"
}
0
Puede utilizar is
para comprobar:
MyType obj = new MyType();
if (obj is IList)
{
// obj implements IList
}
Cuestiones relacionadas
- 1. Objeto o tipo primitivo
- 2. ¿Tiene nulo el tipo de objeto?
- 3. iPhone cómo comprobar el tipo de un objeto?
- 4. No se puede convertir el objeto COM del tipo 'System .__ ComObject' al tipo de interfaz 'Microsoft.VisualStudio.OLE.Interop.IServiceProvider'
- 5. Tipo de interfaz Constructor
- 6. Cómo obtener el tipo de objeto COM
- 7. Cambiar el tipo de propiedad en la clase que implementa la interfaz con la propiedad tipo de objeto
- 8. Crear tipo que implementa la interfaz interna
- 9. Obtener el tipo de interfaz genérica?
- 10. SQLite no tiene tipo?
- 11. ¿Interfaz como tipo en Java?
- 12. Tipo de parámetro Tipo de
- 13. que es el mejor enfoque para comprobar el tipo de objeto
- 14. obtener el cursor del mouse actual tipo
- 15. interfaz para el método que devuelve su propio tipo
- 16. casting genérico para Tipo de interfaz - No se puede convertir objeto de tipo 'System.RuntimeType' para escribir
- 17. tipo de matriz tiene incompleta elemento de tipo
- 18. ¿Cómo encontrar el tipo de objeto que tengo en Perl?
- 19. tipo de valor tipo de objeto de referencia en javascript
- 20. Cómo comprobar que implementa objeto de interfaz
- 21. Genéricos de advertencia T tiene mismo nombre que el tipo de otro tipo
- 22. Tipo abstracto de Scala que representa el tipo de subclase
- 23. En Objective-C, ¿cómo pruebo el tipo de objeto?
- 24. clase A tiene un parámetro de tipo, pero el tipo B tiene uno
- 25. MS Access: Determine el tipo de objeto
- 26. ¿Puedo indicar que un parámetro de tipo C# solo debe ser un tipo de interfaz?
- 27. ¿Tipo de objeto tipo mapa en PL/SQL?
- 28. Cómo comprobar el tipo en tiempo de compilación
- 29. "parámetro tiene tipo incompleto" advertencia
- 30. Cómo comprobar si el tipo de variable coincide con Tipo almacenado en una variable
+1 ¡Esto respondió mi pregunta! – IAbstract
¿funciona esto para cualquier interfaz? – DevDave