Error del compilador CS1940
Se encontraron varias implementaciones del patrón de consulta para el tipo de origen 'tipo'. Llamada ambigua a 'método'.
Este error se genera cuando se definen varias implementaciones de un método de consulta y el compilador no puede eliminar la ambigüedad de cuál es la mejor para la consulta. En el ejemplo siguiente, las dos versiones de Select
tienen la misma firma, ya que ambas aceptan un int
como parámetro de entrada y int
como valor devuelto.
- Proporcione solo una implementación para cada método.
El código siguiente genera el error CS1940:
// cs1940.cs
using System; //must include explicitly for types defined in 3.5
class Test
{
public delegate int Dele(int x);
int num = 0;
public int Select(Func<int, int> d)
{
return d(this.num);
}
public int Select(Dele d) // CS1940
{
return d(this.num) + 1;
}
public static void Main()
{
var q = from x in new Test()
select x;
}
}
Comentarios de .NET
.NET es un proyecto de código abierto. Seleccione un vínculo para proporcionar comentarios: