Obtener tipo de datos

13/09/2007 - 12:19 por Vicente García | Informe spam
Hola,

Yo tengo una cadena de texto que cambiará dinámicamente, por ejemplo
"MI_TIPO_DE_DATO" y lo que quiero es crear dinámicamente un objeto de
"MI_TIPO_DE_DATO".

Es decir "MI_TIPO_DE_DATO" objVarible = new "MI_TIPO_DE_DATO"();

Obviamente lo que he puesto fallará, pero yo quisiera si se puede hacer algo
como lo que he dicho, es decir, crear objetos de un tipo que se le pasará
como una cadena dinámicamente.

Muchas gracias!!

Preguntas similare

Leer las respuestas

#1 Alberto Poblacion
13/09/2007 - 13:25 | Informe spam
"Vicente García" wrote in message
news:
Yo tengo una cadena de texto que cambiará dinámicamente, por ejemplo
"MI_TIPO_DE_DATO" y lo que quiero es crear dinámicamente un objeto de
"MI_TIPO_DE_DATO".

Es decir "MI_TIPO_DE_DATO" objVarible = new "MI_TIPO_DE_DATO"();

Obviamente lo que he puesto fallará, pero yo quisiera si se puede hacer
algo como lo que he dicho, es decir, crear objetos de un tipo que se le
pasará como una cadena dinámicamente.



using System.Reflection;
...

object miObjeto =
Assembly.CreateInstance("EspacioDeNombres.MI_TIPO_DE_DATO");
Respuesta Responder a este mensaje
#2 Vicente García
13/09/2007 - 14:00 | Informe spam
Muchas gracias,

Estaba investigando por mi cuenta y había hecho lo siguiente:

Type objType =
Type.GetType("EspacioDeNombres,MI_TIPO_DE_DATO,EspacioDeNombres");
Object objList = Activator.CreateInstance(objType);

Pero no logro acceder a las propiedades de "MI_TIPO_DE_DATOS" que tiene que
tener objList :(

Saludos

"Alberto Poblacion"
escribió en el mensaje de noticias
news:
"Vicente García" wrote in message
news:
Yo tengo una cadena de texto que cambiará dinámicamente, por ejemplo
"MI_TIPO_DE_DATO" y lo que quiero es crear dinámicamente un objeto de
"MI_TIPO_DE_DATO".

Es decir "MI_TIPO_DE_DATO" objVarible = new "MI_TIPO_DE_DATO"();

Obviamente lo que he puesto fallará, pero yo quisiera si se puede hacer
algo como lo que he dicho, es decir, crear objetos de un tipo que se le
pasará como una cadena dinámicamente.



using System.Reflection;
...

object miObjeto =
Assembly.CreateInstance("EspacioDeNombres.MI_TIPO_DE_DATO");


Respuesta Responder a este mensaje
#3 Alberto Poblacion
13/09/2007 - 15:23 | Informe spam
"Vicente García" wrote in message
news:
Estaba investigando por mi cuenta y había hecho lo siguiente:

Type objType =
Type.GetType("EspacioDeNombres,MI_TIPO_DE_DATO,EspacioDeNombres");
Object objList = Activator.CreateInstance(objType);

Pero no logro acceder a las propiedades de "MI_TIPO_DE_DATOS" que tiene
que tener objList :(



Una vez más, tienes que seguir "tirando" de Reflection:

PropertyInfo pi = objType.GetProperty("MiPropiedad");
object valor = pi.GetValue(objList, null);
Respuesta Responder a este mensaje
#4 Vicente García
13/09/2007 - 16:52 | Informe spam
"Alberto Poblacion"
escribió en el mensaje de noticias
news:
"Vicente García" wrote in message
news:
Estaba investigando por mi cuenta y había hecho lo siguiente:

Type objType =
Type.GetType("EspacioDeNombres,MI_TIPO_DE_DATO,EspacioDeNombres");
Object objList = Activator.CreateInstance(objType);

Pero no logro acceder a las propiedades de "MI_TIPO_DE_DATOS" que tiene
que tener objList :(



Una vez más, tienes que seguir "tirando" de Reflection:

PropertyInfo pi = objType.GetProperty("MiPropiedad");
object valor = pi.GetValue(objList, null);





He estado probando y funciona perfectamente. También la invocación de
métodos. Es un poco lioso pero puede ser muy útil.

Muchísimas gracias por la ayuda!!
Vicente.
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida