Ошибка компилятора CS0123
Обновлен: Ноябрь 2007
Сообщение об ошибке
Перегрузка для 'метод' не совпадает с делегатом 'делегат'
No overload for 'method' matches delegate 'delegate'
Сбой попытки создания делегата из-за того, что не была использована правильная подпись. Экземпляры делегата должны быть объявлены с такой же подписью, как и объявление делегата.
Для устранения ошибки можно изменить либо метод, либо подпись делегата. Дополнительные сведения см. в разделе Делегаты (руководство по программированию на C#).
Следующий пример приводит к возникновению ошибки 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
}
}