Baca dalam bahasa Inggris

Bagikan melalui


ArgumentException Kelas

Definisi

Pengecualian yang dilemparkan ketika salah satu argumen yang diberikan ke metode tidak valid.

public class ArgumentException : Exception
public class ArgumentException : SystemException
[System.Serializable]
public class ArgumentException : SystemException
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public class ArgumentException : SystemException
Warisan
ArgumentException
Warisan
ArgumentException
Turunan
Atribut
Penerapan

Contoh

Contoh berikut menunjukkan cara melempar dan menangkap ArgumentException. Ini menggunakan ArgumentException.GetType(). Properti nama untuk menampilkan nama objek pengecualian, dan juga menggunakan Message properti untuk menampilkan teks pesan pengecualian.

using System;

public class Example
{
    static void Main()
    {
        // Define some integers for a division operation.
        int[] values = { 10, 7 };
        foreach (var value in values) {
            try {
               Console.WriteLine("{0} divided by 2 is {1}", value, DivideByTwo(value));
            }
            catch (ArgumentException e) {
               Console.WriteLine("{0}: {1}", e.GetType().Name, e.Message);
            }
            Console.WriteLine();
        }
    }

    static int DivideByTwo(int num)
    {
        // If num is an odd number, throw an ArgumentException.
        if ((num & 1) == 1)
            throw new ArgumentException(String.Format("{0} is not an even number", num),
                                      "num");

        // num is even, return half of its value.
        return num / 2;
    }
}
// This example displays the following output:
//     10 divided by 2 is 5
//
//     ArgumentException: 7 is not an even number
//     Parameter name: num

Keterangan

ArgumentException dilemparkan ketika metode dipanggil dan setidaknya salah satu argumen yang diteruskan tidak memenuhi spesifikasi parameter dari metode yang disebut. Properti ParamName mengidentifikasi argumen yang tidak valid.

Paling umum, dilemparkan ArgumentException oleh runtime bahasa umum atau pustaka kelas lain dan menunjukkan kesalahan pengembang. Jika Anda melempar ArgumentException dari kode, Anda harus memastikan bahwa properti pengecualian Message menyertakan pesan kesalahan yang bermakna yang menjelaskan argumen yang tidak valid dan rentang nilai yang diharapkan untuk argumen.

Kelas turunan ArgumentException utama adalah ArgumentNullException dan ArgumentOutOfRangeException. Kelas turunan ini harus digunakan alih-alih ArgumentException, kecuali dalam situasi di mana tidak ada kelas turunan yang dapat diterima. Misalnya, pengecualian harus dilemparkan oleh:

  • ArgumentNullException setiap kali null diteruskan ke metode yang tidak menerimanya sebagai argumen yang valid.

  • ArgumentOutOfRangeException ketika nilai argumen berada di luar rentang nilai yang dapat diterima; misalnya, ketika nilai "46" diteruskan sebagai argumen bulan selama pembuatan DateTime.

Jika panggilan metode tidak memiliki argumen atau jika kegagalan tidak melibatkan argumen itu sendiri, maka InvalidOperationException harus digunakan.

ArgumentException menggunakan COR_E_ARGUMENT HRESULT, yang memiliki nilai 0x80070057.

Untuk daftar nilai properti awal untuk instans ArgumentException, lihat ArgumentException konstruktor.

Di F#, Anda dapat menggunakan fungsi invalidArg untuk menghasilkan dan menaikkan ArgumentException.

Konstruktor

ArgumentException()

Menginisialisasi instans baru kelas ArgumentException.

ArgumentException(SerializationInfo, StreamingContext)
Kedaluwarsa.

Menginisialisasi instans ArgumentException baru kelas dengan data berseri.

ArgumentException(String)

Menginisialisasi instans ArgumentException baru kelas dengan pesan kesalahan tertentu.

ArgumentException(String, Exception)

Menginisialisasi instans ArgumentException baru kelas dengan pesan kesalahan tertentu dan referensi ke pengecualian dalam yang merupakan penyebab pengecualian ini.

ArgumentException(String, String)

Menginisialisasi instans ArgumentException baru kelas dengan pesan kesalahan tertentu dan nama parameter yang menyebabkan pengecualian ini.

ArgumentException(String, String, Exception)

Menginisialisasi instans ArgumentException baru kelas dengan pesan kesalahan tertentu, nama parameter, dan referensi ke pengecualian dalam yang merupakan penyebab pengecualian ini.

Properti

Data

Mendapatkan kumpulan pasangan kunci/nilai yang memberikan informasi tambahan yang ditentukan pengguna tentang pengecualian.

(Diperoleh dari Exception)
HelpLink

Mendapatkan atau mengatur tautan ke file bantuan yang terkait dengan pengecualian ini.

(Diperoleh dari Exception)
HResult

Mendapatkan atau mengatur HRESULT, nilai numerik berkode yang ditetapkan ke pengecualian tertentu.

(Diperoleh dari Exception)
InnerException

Mendapatkan instans Exception yang menyebabkan pengecualian saat ini.

(Diperoleh dari Exception)
Message

Mendapatkan pesan kesalahan dan nama parameter, atau hanya pesan kesalahan jika tidak ada nama parameter yang ditetapkan.

ParamName

Mendapatkan nama parameter yang menyebabkan pengecualian ini.

Source

Get dan set nama aplikasi atau objek yang menyebabkan kesalahan.

(Diperoleh dari Exception)
StackTrace

Mendapatkan representasi string dari bingkai langsung pada tumpukan panggilan.

(Diperoleh dari Exception)
TargetSite

Mendapatkan metode yang melemparkan pengecualian saat ini.

(Diperoleh dari Exception)

Metode

Equals(Object)

Menentukan apakah objek yang ditentukan sama dengan objek saat ini.

(Diperoleh dari Object)
GetBaseException()

Ketika ditimpa di kelas turunan Exception , mengembalikan yang merupakan akar penyebab dari satu atau beberapa pengecualian berikutnya.

(Diperoleh dari Exception)
GetHashCode()

Berfungsi sebagai fungsi hash default.

(Diperoleh dari Object)
GetObjectData(SerializationInfo, StreamingContext)
Kedaluwarsa.

SerializationInfo Mengatur objek dengan nama parameter dan informasi pengecualian tambahan.

GetObjectData(SerializationInfo, StreamingContext)
Kedaluwarsa.

Saat ditimpa di kelas turunan SerializationInfo , mengatur dengan informasi tentang pengecualian.

(Diperoleh dari Exception)
GetType()

Mendapatkan jenis runtime dari instans saat ini.

(Diperoleh dari Exception)
MemberwiseClone()

Membuat salinan dangkal dari saat ini Object.

(Diperoleh dari Object)
ThrowIfNullOrEmpty(String, String)

Melempar pengecualian jika argument kosong atau kosong null .

ThrowIfNullOrWhiteSpace(String, String)

Melempar pengecualian jika argument adalah null, kosong, atau hanya terdiri dari karakter spasi putih.

ToString()

Membuat dan mengembalikan representasi string dari pengecualian saat ini.

(Diperoleh dari Exception)

Acara

SerializeObjectState
Kedaluwarsa.

Terjadi ketika pengecualian diserialisasikan untuk membuat objek status pengecualian yang berisi data berseri tentang pengecualian.

(Diperoleh dari Exception)

Berlaku untuk

Produk Versi
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.5, 1.6, 2.0, 2.1
UWP 10.0

Lihat juga