Partager via


Dépannage des exceptions : System.ArgumentException

Mise à jour : Juillet 2008

Une exception ArgumentException est levée lorsqu'au moins un des arguments fourni à une méthode ne répond pas aux spécifications des paramètres de cette méthode.

Dans l'exemple suivant, l'exception est levée lorsque l'argument envoyé à la méthode DivideByTwo n'est pas un nombre pair.

Module Module1

    Sub Main()

        ' ArgumentException is not thrown in DivideByTwo because 10 is 
        ' an even number.
        Console.WriteLine("10 divided by 2 is {0}", DivideByTwo(10))
        Try
            ' ArgumentException is thrown in DivideByTwo because 7 is 
            ' not an even number.
            Console.WriteLine("7 divided by 2 is {0}", DivideByTwo(7))
        Catch argEx As ArgumentException
            ' Tell the user which problem is encountered.
            Console.WriteLine("7 cannot be evenly divided by 2.")
            Console.WriteLine("Exception message: " & argEx.Message)
        End Try
        ' Uncomment the next statement to see what happens if you call 
        ' DivideByTwo directly.
        'Console.WriteLine(DivideByTwo(7))

    End Sub

    Function DivideByTwo(ByVal num As Integer) As Integer

        ' If num is an odd number, throw an ArgumentException. The
        ' ArgumentException class provides a number of constructors
        ' that you can choose from.
        If num Mod 2 = 1 Then
            Throw New ArgumentException("Argument for num must be" & _
                " an even number.")
        End If

        ' Value of num is even, so return half of its value.
        Return num / 2

    End Function

End Module

Toutes les instances de la classe ArgumentException doivent comporter des informations qui spécifient l'argument qui n'est pas valide et la plage de valeurs acceptables. Si une exception plus précise, telle que ArgumentNullException ou ArgumentOutOfRangeException, décrit correctement la situation, elle doit être utilisée à la place d'ArgumentException.

Pour plus d'informations sur cette exception et obtenir des exemples dans d'autres langages, consultez ArgumentException. Pour obtenir la liste d'autres constructeurs, consultez ArgumentException().

Voir aussi

Tâches

Comment : en savoir plus sur une exception avec l'Assistant Exception

Référence

ArgumentException

Historique des modifications

Date

Historique

Raison

Juillet 2008

Exemple ajouté, ainsi que informations supplémentaires sur l'exception.

Commentaires client.