Errore del compilatore CS0123

Aggiornamento: novembre 2007

Messaggio di errore

Nessun overload per 'metodo' corrisponde al delegato 'delegato'.
No overload for 'method' matches delegate 'delegate'

Un tentativo di creazione di un delegato non è riuscito in quanto non è stata utilizzata la firma corretta. Le istanze di un delegato devono essere dichiarate con la stessa firma della dichiarazione del delegato.

Per correggere questo errore, modificare la firma del delegato o del metodo. Per ulteriori informazioni, vedere Delegati (Guida per programmatori C#).

Il seguente codice di esempio genera l'errore CS0123:

// CS0123.cs
delegate void D();
delegate void D2(int i);

public class C
{
   public static void f(int i) {}

   public static void Main()
   {
      D d = new D(f);   // CS0123
      D2 d2 = new D2(f);   // OK
   }
}