"ParamArray" не может быть применен к первому параметру метода расширения
Обновлен: Ноябрь 2007
Сообщение об ошибке
"ParamArray" не может быть применен к первому параметру метода расширения. Первый параметр задает расширяемый тип.
'ParamArray' cannot be applied to the first parameter of an extension method. The first parameter specifies which type to extend.
Первый параметр метода расширения указывает тип данных, который расширяется методом. Таким образом, первый параметр необходим и не может быть необязательным. Поскольку массив параметров автоматически не является обязательным, он недопустим в качестве первого аргумента метода расширения.
![]() |
---|
При выполнении метода экземпляр расширенного типа данных, который вызывает метод, становится аргументом для первого параметра метода. Например, экземпляр greeting в greeting.Print() является аргументом для первого параметра, str, в методе расширения Public Sub Print (ByVal str As String). |
Идентификатор ошибки: BC36554
Исправление этой ошибки
Если в массиве параметров не указывается тип данных, который нужно расширить, добавьте новый первый параметр, указывающий этот тип.
<Extension()> Public Sub AddTo(ByRef str As String, ByVal ParamArray addOns() As String) ' Concatenate the strings in addOns to str. End Sub
Если в массиве параметров указывается тип данных, который требуется расширить, рассмотрите возможность замены его на обычный массив, которому требуется аргумент, вместо массива параметров. Обычные массивы можно расширить.
<Extension()> Public Function Sum(ByVal ints() As Integer) As Integer Dim total As Integer = 0 For Each i As Integer In ints total = total + i Next i Return total End Function