Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
'Opcional' não pode ser aplicado ao primeiro parâmetro de um método de extensão. O primeiro parâmetro especifica qual tipo estender.
O primeiro parâmetro de um método de extensão especifica o tipo de dados que o método estende. Quando o método é executado, o primeiro parâmetro é associado à instância do tipo de dados que invoca o método. Portanto, ele é necessário e não pode ser opcional.
A restrição se aplica apenas ao primeiro parâmetro. Outros parâmetros podem ser opcionais ou não, seguindo as mesmas regras que em qualquer outro método. Para obter mais informações, confira Lista de parâmetros.
ID do erro: BC36553
Para corrigir este erro
Se você quiser que o primeiro parâmetro atual especifique o tipo de dados que está sendo estendido, remova a palavra-chave
Optional.Se o primeiro parâmetro atual for um parâmetro padrão para o método e você não quiser que ele represente o tipo de dados que está sendo estendido, adicione um novo primeiro parâmetro.
Exemplo
O primeiro parâmetro no exemplo a seguir é a única indicação de que o método Print estende o tipo de dados String. Portanto, ele não pode ser opcional.
<Extension()>
Public Sub Print (ByVal str As String)
Console.WriteLine(str)
End Sub
Quando o método de extensão é chamado da maneira a seguir, o parâmetro str no método é associado a greeting, a instância de String que chama Print. O compilador usa greeting como o argumento para o método de extensão Print.
Dim greeting As String = "Hello"
greeting.Print()