Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
"Optional" не может применяться к первому параметру метода расширения. Первый параметр указывает тип для расширения.
Первый параметр метода расширения указывает тип данных, который расширяет метод. При выполнении метода первый параметр привязывается к экземпляру типа данных, который вызывает метод. Таким образом, первый параметр необходим и не может быть необязательным.
Это ограничение действует только для первого параметра. Другие параметры могут быть обязательными или необязательными, и подчиняются тем же правилам, что и параметры любого другого метода. Дополнительные сведения см. в разделе Parameter List.
Идентификатор ошибки: BC36553
Исправление ошибки
Если вы хотите, чтобы текущий первый параметр указывал расширяемый тип данных, удалите ключевое слово
Optional.Если текущий первый параметр является стандартным параметром для метода, и вы не хотите, чтобы он представлял расширяемый тип данных, добавьте новый первый параметр.
Пример
Первый параметр в следующем примере является единственным указанием, что метод Print расширяет тип данных String . Таким образом, он не может быть необязательным.
<Extension()>
Public Sub Print (ByVal str As String)
Console.WriteLine(str)
End Sub
Когда метод расширения вызывается указанным ниже образом, параметр str в методе привязывается к greeting, экземпляру String , который вызывает метод Print. Компилятор использует greeting в качестве аргумента для метода расширения Print.
Dim greeting As String = "Hello"
greeting.Print()