Assembly : mscorlib (dans mscorlib.dll)
Syntaxe<SerializableAttribute> _ <ComVisibleAttribute(True)> _ Public Class ArgumentException Inherits SystemException Implements ISerializable
Dim instance As ArgumentException
[SerializableAttribute] [ComVisibleAttribute(true)] public class ArgumentException : SystemException, ISerializable
[SerializableAttribute] [ComVisibleAttribute(true)] public ref class ArgumentException : public SystemException, ISerializable
/** @attribute SerializableAttribute() */ /** @attribute ComVisibleAttribute(true) */ public class ArgumentException extends SystemException implements ISerializable
SerializableAttribute ComVisibleAttribute(true) public class ArgumentException extends SystemException implements ISerializable
NotesL'exception ArgumentException est levée lorsqu'une méthode est appelée et qu'au moins un des arguments passés n'est pas conforme aux spécifications de paramètres de la méthode appelée. Toutes les instances de ArgumentException doivent comporter un message d'erreur significatif décrivant l'argument non valide, ainsi que la plage de valeurs acceptées pour l'argument.
Les classes dérivées principales de ArgumentException sont ArgumentNullException et ArgumentOutOfRangeException. Utilisez ces classes dérivées au lieu de ArgumentException, sauf lorsque aucune de ces classes n'est appropriée. Par exemple, des exceptions doivent être levées par :
-
ArgumentNullException chaque fois qu'référence Null (Nothing en Visual Basic) est passée à une méthode pour laquelle cet argument n'est pas valide.
-
ArgumentOutOfRangeException lorsque la valeur d'un argument ne figure pas dans la plage des valeurs autorisées, par exemple, lorsque la valeur « 46 » est passée à l'argument du mois durant la création de DateTime.
Si l'appel de la méthode ne comporte aucun argument ou si l'échec n'est pas provoqué par les arguments eux-mêmes, utilisez InvalidOperationException.
ArgumentException utilise le HRESULT COR_E_ARGUMENT dont la valeur est 0x80070057.
Pour obtenir une liste des valeurs initiales des propriétés d'une instance de ArgumentException, consultez les constructeurs ArgumentException.
ExempleL'exemple suivant illustre la levée et l'interception de ArgumentException.
using System; public sealed class App { static void Main() { // ArgumentException is not thrown because 10 is an even number. Console.WriteLine("10 divided by 2 is {0}", DivideByTwo(10)); try { // ArgumentException is thrown because 7 is not an even number. Console.WriteLine("7 divided by 2 is {0}", DivideByTwo(7)); } catch (ArgumentException) { // Show the user that 7 cannot be divided by 2. Console.WriteLine("7 is not divided by 2 integrally."); } } static int DivideByTwo(int num) { // If num is an odd number, throw an ArgumentException. if ((num & 1) == 1) throw new ArgumentException("Number must be even", "num"); // num is even, return half of its value. return num / 2; } } // This code produces the following output. // // 10 divided by 2 is 5 // 7 is not divided by 2 integrally.
using namespace System; int DivideByTwo(int num) { // If num is an odd number, throw an ArgumentException. if ((num & 1) == 1) { throw gcnew ArgumentException("Number must be even", "num"); } // num is even, return half of its value. return num / 2; } int main() { // ArgumentException is not thrown because 10 is an even number. Console::WriteLine("10 divided by 2 is {0}", DivideByTwo(10)); try { // ArgumentException is thrown because 7 is not an even number. Console::WriteLine("7 divided by 2 is {0}", DivideByTwo(7)); } catch (ArgumentException^) { // Show the user that 7 cannot be divided by 2. Console::WriteLine("7 is not divided by 2 integrally."); } } // This code produces the following output. // // 10 divided by 2 is 5 // 7 is not divided by 2 integrally.
Sécurité des threads
Plates-formesWindows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile pour Pocket PC, Windows Mobile pour Smartphone, Windows Server 2003, Windows XP Édition Media Center, Windows XP Professionnel Édition x64, Windows XP SP2, Windows XP Starter Edition
Le .NET Framework ne prend pas en charge toutes les versions de chaque plate-forme. Pour obtenir la liste des versions prises en charge, consultez Configuration requise.
Informations de version.NET Framework
Prise en charge dans : 2.0, 1.1, 1.0.NET Compact Framework
Prise en charge dans : 2.0, 1.0
Voir aussiRéférence
Membres ArgumentExceptionSystem, espace de noms
Exception
Outils (masquer)
S'enregistrer
Liste des Membres
Qui est en ligne?
FAQ