ambiguous match found and overload

03/09/2006 - 04:29 por alf | Informe spam
Hola, estoy invocando un metodo de la forma:

Type newDO_W = Type.GetType(eType); // The Type

object oDO_W = Activator.CreateInstance(newDO_W); // The Object

object[] methparams = new object[2];

methparams[0] = dirty_oDO;

methparams[1] = oDO;

newDO_W.GetMethod(eUpdateMethod).Invoke(oDO_W, methparams); // Invoke Method

pero el objeto oDO_W tiene 2 metodos sobrecargados, uno recibe un parametro
y el otro 2, los dos parametros son del mismo tipo en los dos metodos y los
dos metodos tienen el mismo acceso Public. entonces recibo la exception
AmbiguousMatchFound.
Parece que a pesar de estar pasando 2 parametros el framework no sabe
escoger el metodo correcto a ejecutar.

como puedo invocar uno de estos metodos sin obtener error ??

saludos, alf.

Preguntas similare

Leer las respuestas

#1 Octavio Hernandez
03/09/2006 - 09:33 | Informe spam
alf,

No has puesto la línea de código en la que obtienes el objeto MethodInfo,
eUpdateMethod.
Seguramente ahí te falta indicar que te interesa la versión con dos
parámetros:

mInfo = typeof(Program).GetMethod("MethodA",
new Type[] { typeof(int), typeof(int) }); // dos argumentos

Salu2 - Octavio



"alf" escribió en el mensaje
news:
Hola, estoy invocando un metodo de la forma:

Type newDO_W = Type.GetType(eType); // The Type

object oDO_W = Activator.CreateInstance(newDO_W); // The Object

object[] methparams = new object[2];

methparams[0] = dirty_oDO;

methparams[1] = oDO;

newDO_W.GetMethod(eUpdateMethod).Invoke(oDO_W, methparams); // Invoke
Method

pero el objeto oDO_W tiene 2 metodos sobrecargados, uno recibe un
parametro y el otro 2, los dos parametros son del mismo tipo en los dos
metodos y los dos metodos tienen el mismo acceso Public. entonces recibo
la exception AmbiguousMatchFound.
Parece que a pesar de estar pasando 2 parametros el framework no sabe
escoger el metodo correcto a ejecutar.

como puedo invocar uno de estos metodos sin obtener error ??

saludos, alf.




Respuesta Responder a este mensaje
#2 alf
03/09/2006 - 22:14 | Informe spam
cierto, creo que eso lo resolvera.
gracias.


"Octavio Hernandez" wrote in message
news:%
alf,

No has puesto la línea de código en la que obtienes el objeto MethodInfo,
eUpdateMethod.
Seguramente ahí te falta indicar que te interesa la versión con dos
parámetros:

mInfo = typeof(Program).GetMethod("MethodA",
new Type[] { typeof(int), typeof(int) }); // dos argumentos

Salu2 - Octavio



"alf" escribió en el mensaje
news:
Hola, estoy invocando un metodo de la forma:

Type newDO_W = Type.GetType(eType); // The Type

object oDO_W = Activator.CreateInstance(newDO_W); // The Object

object[] methparams = new object[2];

methparams[0] = dirty_oDO;

methparams[1] = oDO;

newDO_W.GetMethod(eUpdateMethod).Invoke(oDO_W, methparams); // Invoke
Method

pero el objeto oDO_W tiene 2 metodos sobrecargados, uno recibe un
parametro y el otro 2, los dos parametros son del mismo tipo en los dos
metodos y los dos metodos tienen el mismo acceso Public. entonces recibo
la exception AmbiguousMatchFound.
Parece que a pesar de estar pasando 2 parametros el framework no sabe
escoger el metodo correcto a ejecutar.

como puedo invocar uno de estos metodos sin obtener error ??

saludos, alf.








email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida