Estoy tratando de usar Type.GetType y pasar el nombre completo de clase "caLibClient.entity.Web2ImageEntity". El caLibClient.entity es espacio de nombres, ubicado en un conjunto separado (caLibClient) y agregado a la lista de ensambles de referencia del programa. Type.GetType siempre devuelve Null cuando lo llamo desde el programa, ¿qué pasa?Type.GetType return null
Respuesta
es necesario agregar el nombre de ensamblado, así, ya que su tipo no está en el conjunto delejecución (ni mscorlib.) Así que la llamada debe ser:
var myType = Type.GetType("caLibClient.entity.Web2ImageEntity, FullAssemblyName");
Desde el Type.GetType()
docs:
typeName
Tipo:System.String
El nombre calificado para ensamblar del tipo que se va a obtener. Consulte AssemblyQualifiedName. Si el tipo está en el ensamblado actualmente en ejecución o en Mscorlib.dll, es suficiente con proporcionar el nombre de tipo calificado por su espacio de nombre.
Desde el docs for AssemblyQualifiedName
, este es un nombre de la muestra:
TopNamespace.SubNameSpace.ContainingClass+NestedClass, MyAssembly, Version=1.3.0.0, Culture=neutral, PublicKeyToken=b17a5c561934e089
actualización: Si ya está haciendo referencia a la asamblea en su proyecto, y saber en tiempo de compilación lo que el tipo nombre es decir, es mejor decir
Type myType = typeof(caLibClient.entity.Web2ImageEntity);
ya que no es necesario buscar el tipo en tiempo de ejecución; el compilador hará todo por ti.
lo necesario para pasar un assembly qualified name, en su caso, algo como esto:
var yourType = Type.GetType("caLibClient.entity.Web2ImageEntity,caLibClient");
Todavía me sale nulo – Tomas
Trate Type.GetType("caLibClient.entity.Web2ImageEntity, caLibClient")
, de acuerdo con Assembly qualified name
Si conoces a un tipo en la asamblea que el tipo de destino vive en ti puede evitar la codificación dura del nombre calificado de ensamblaje completo. Por ejemplo:
Type.GetType(
"MyAssembly.Foo.BarSubclass, " + typeof(MyAssembly.Foo.IBar).Assembly.FullName)
- 1. Type.GetType() return null
- 2. Type.GetType() cadena dinámica return nulo
- 3. FindName return null
- 4. NSFileHandle fileHandleForWritingAtPath: return null!
- 5. RingtoneManager return null ringtone
- 6. claimsResponse Return Null
- 7. List Intersect return null
- 8. Por qué Images.Media.insertImage return null
- 9. HttpServletRequest request = this.getThreadLocalRequest() return null?
- 10. Singleton y @Autowired return NULL
- 11. Consulta de mangosta return null
- 12. android instrumentation test case - getinstrumentation() return null
- 13. ¿En qué situación sería document.open() return null?
- 14. Type.GetType (typeName cadena) devuelve un valor nulo
- 15. genérico Clase y Type.GetType()
- 16. sql join return null si no se encuentra el valor
- 17. JAXB return null en su lugar serie vacía
- 18. En caso de que una función use: return null ;?
- 19. ConfigurationManager return null en lugar de valores de cadena
- 20. SET variable definida por el usuario en mysql return null?
- 21. ViewBag return null en la clase de extensión
- 22. stringWithContentsOfFile e initWithContentsOfFile return null después de varias ejecuciones
- 23. return String vs Integer vs undefined vs null
- 24. ¿Por qué no funcionarían Type.GetType() y Assembly.GetType()?
- 25. yield return versus return select
- 26. Type.GetType no funciona en clases genéricas?
- 27. if (! This) {return false; }
- 28. evitar dar nombre de espacio de nombres en Type.GetType()
- 29. Type.GetType(), HashSet <T> y la Asamblea Calificación
- 30. Type.GetType no puede crear tipo de montaje ya cargado
¿Cómo encontrar el nombre completo para el ensamblaje? No estoy seguro si entiendo correctamente lo que significa. ¿Dónde mirar? – Tomas
@Tomas ¿Cuál es el nombre del conjunto al que hizo referencia? – dlev