Llamada a Procedimientos
Hola.
A una Función generica le paso dos parámetros:
- un Tipo de objeto.
- y un nombre de Procedimiento 'NOM_PRO'
En la Funcion defino un objeto 'OBJ' con el Tipo de objeto
pasado como parámetro.
Necesito llamar al procedimiento 'NOM_PRO' de 'OBJ'
algo paracedo a :
dim a as integer = OBJ.NOM_PRO
pero que funcione...., basicamente lo que necesito es que
NOM_PRO sea de tipo Procedimiento...
Gracias !!
A una Función generica le paso dos parámetros:
- un Tipo de objeto.
- y un nombre de Procedimiento 'NOM_PRO'
En la Funcion defino un objeto 'OBJ' con el Tipo de objeto
pasado como parámetro.
Necesito llamar al procedimiento 'NOM_PRO' de 'OBJ'
algo paracedo a :
dim a as integer = OBJ.NOM_PRO
pero que funcione...., basicamente lo que necesito es que
NOM_PRO sea de tipo Procedimiento...
Gracias !!
Puedes usar reflexion para hacer eso.
Llegando como parametros un type de objeto y una string con el metodo q queremos llamar,
el codigo c# para hacerlo seria:
private obj ExecMethod(Type OBJ, string method)
{
object objOBJ=Activator.CreateInstance(OBJ,
new object[]{"paramCtor1"});//parametros de constructor?
MethodInfo m=OBJ.GetMethod(method);
object r=(object)m.Invoke(objOBJ, //objeto
new object[]{"stringParamMethod1","stringParamMethod2"}); //parametros de metodo?
//devolvemos el objeto q nos ha devulto el método
return r;
}
Suerte
Llegando como parametros un type de objeto y una string con el metodo q queremos llamar,
el codigo c# para hacerlo seria:
private obj ExecMethod(Type OBJ, string method)
{
object objOBJ=Activator.CreateInstance(OBJ,
new object[]{"paramCtor1"});//parametros de constructor?
MethodInfo m=OBJ.GetMethod(method);
object r=(object)m.Invoke(objOBJ, //objeto
new object[]{"stringParamMethod1","stringParamMethod2"}); //parametros de metodo?
//devolvemos el objeto q nos ha devulto el método
return r;
}
Suerte
