Partager via


'ParamArray' ne peut pas être appliqué au premier paramètre d'une méthode d'extension

Mise à jour : novembre 2007

Message d'erreur

'ParamArray' ne peut pas être appliqué au premier paramètre d'une méthode d'extension. Le premier paramètre spécifie le type à étendre.
'ParamArray' cannot be applied to the first parameter of an extension method. The first parameter specifies which type to extend.

Le premier paramètre d'une méthode d'extension spécifie le type de données qu'elle étend. Par conséquent, le premier paramètre est obligatoire et ne peut pas être optionnel. Étant donné qu'un tableau de paramètres est automatiquement facultatif, il n'est pas valide comme premier argument d'une méthode d'extension.

Remarque :

Lorsque la méthode est exécutée, l'instance du type de données étendu qui appelle la méthode devient l'argument du premier paramètre de la méthode. Par exemple, l'instance greeting dans greeting.Print() est l'argument du premier paramètre, str, dans la méthode d'extension Public Sub Print (ByVal str As String).

ID d'erreur : BC36554

Pour corriger cette erreur

  • Si le tableau de paramètres ne spécifie pas le type de données que vous souhaitez étendre, ajoutez un nouveau premier paramètre qui spécifie ce type.

    <Extension()>
    Public Sub AddTo(ByRef str As String, ByVal ParamArray addOns() As String)
    ' Concatenate the strings in addOns to str.
    End Sub
    
  • Si le tableau de paramètres spécifie le type de données que vous souhaitez étendre, envisagez de le modifier en tableau normal, en requérant un argument, au lieu d'un tableau de paramètres. Les tableaux normaux peuvent être étendus.

    <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
    

Voir aussi

Concepts

Méthodes d'extension (Visual Basic)

Tableaux de paramètres

Paramètres facultatifs