Ошибка компилятора CS1113
Методы расширения "имя", определенные в типе значения "имя", не могут применяться для создания делегатов.
Методы расширения, определенные для типов классов, могут применяться для создания делегатов. Методы расширения, определенные для типов значений, не могут.
Свяжите метод расширения с типом класса.
Сделайте этот метод обычным методом в структуре.
В следующем примере возникает ошибка CS1113:
// cs1113.cs
using System;
public static class Extensions
{
public static S ExtMethod(this S s)
{
return s;
}
}
public struct S
{
}
public class Test
{
static int Main()
{
Func<S> f = new S().ExtMethod; // CS1113
return 1;
}
}
Отзыв о .NET
.NET — это проект с открытым исходным кодом. Выберите ссылку, чтобы оставить отзыв: