Compilerfehler CS1502Compiler Error CS1502

Die beste Übereinstimmung für die überladene Methode „Name“ hat einige ungültige Argumente.The best overloaded method match for 'name' has some invalid arguments

Dieser Fehler tritt auf, wenn die an die Methode übergebenen Argumenttypen nicht mit den Parametertypen dieser Methode übereinstimmen.This error occurs when the argument types being passed to the method do not match the parameter types of that method. Wenn die aufgerufene Methode überladen ist, hat keine der überladenen Versionen eine Signatur, die mit den übergebenen Argumenttypen übereinstimmt.If the called method is overloaded, then none of the overloaded versions has a signature that matches the argument types being passed.

Führen Sie zur Beseitigung dieses Problems einen der folgenden Schritte aus:To resolve this problem, do one of the following:

  • Überprüfen Sie sorgfältig die Typen der übergebenen Argumente.Double-check the types of the arguments being passed. Stellen Sie sicher, dass sie den Argumenten der aufgerufenen Methode entsprechen.Make sure that they match the arguments of the method being called.

  • Konvertieren Sie ggf. nicht übereinstimmende Parameter mithilfe der Klasse Convert.If appropriate, convert any mismatched parameters using the Convert class.

  • Führen Sie für nicht übereinstimmende Parameter ggf. eine Typumwandlung durch, damit sie dem von der Methode erwarteten Typ entsprechen.If appropriate, cast any mismatched parameters to match the type that the method is expecting.

  • Definieren Sie ggf. eine andere überladene Version der Methode, um sie auf die gesendeten Parametertypen abzustimmen.If appropriate, define another overloaded version of the method to match the parameter types that are being sent.

Im folgenden Beispiel wird der Fehler CS1502 generiert:The following sample generates CS1502:

// CS1502.cs  
namespace x  
{  
   public class a  
   {  
      public a(char i)  
      // try the following constructor instead  
      // public a(int i)  
      {  
      }  

      public static void Main()  
      {  
         a aa = new a(2222);   // CS1502  
      }  
   }  
}