Error del compilador CS1928
Actualización: noviembre 2007
Mensaje de error
'Tipo' no contiene una definición para 'método' y la mejor sobrecarga del método de extensión 'método' tiene algunos argumentos no válidos.
'Type' does not contain a definition for 'method' and the best extension method overload 'method' has some invalid arguments.
Este error se genera cuando el compilador no encuentra un miembro de clase con el nombre del método al que ha llamado. Puede encontrar un método de extensión con ese nombre, pero no con una firma que coincida con los tipos que pasó con su llamada al método.
Para corregir este error
- Pase tipos que coincidan con un método de extensión o método de clase existente.
Ejemplo
El código siguiente genera el error CS1928:
// cs1928.cs
class Test
{
static void Main()
{
Test t = new Test();
t.M("hi"); // CS1928
}
}
static class Ext
{
public static void M(this Test t, int i)
{
}
}
Este error va acompañado con frecuencia del error CS1503: Argumento 'n': no se puede convertir de 'tipoA' a 'tipoB'.