İngilizce dilinde oku

Aracılığıyla paylaş


ArrayTypeMismatchException Sınıf

Tanım

Bir dizi içinde yanlış türdeki bir öğeyi depolama girişiminde bulunulduğunda oluşan özel durum.

C#
public class ArrayTypeMismatchException : Exception
C#
public class ArrayTypeMismatchException : SystemException
C#
[System.Serializable]
public class ArrayTypeMismatchException : SystemException
C#
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public class ArrayTypeMismatchException : SystemException
Devralma
ArrayTypeMismatchException
Devralma
ArrayTypeMismatchException
Öznitelikler

Örnekler

Aşağıdaki kod örneği, nerede ArrayTypeMismatchException oluştuğuna ilişkin senaryoları gösterir.

C#
using System;

namespace ArrayTypeMismatch
{
    class Class1
    {
        static void Main(string[] args)
        {
            string[] names = {"Dog", "Cat", "Fish"};
            Object[] objs  = (Object[]) names;

            try
            {
                objs[2] = "Mouse";

                foreach (object animalName in objs)
                {
                    System.Console.WriteLine(animalName);
                }
            }
            catch (System.ArrayTypeMismatchException)
            {
                // Not reached; "Mouse" is of the correct type.
                System.Console.WriteLine("Exception Thrown.");
            }

            try
            {
                Object obj = (Object) 13;
                objs[2] = obj;
            }
            catch (System.ArrayTypeMismatchException)
            {
                // Always reached, 13 is not a string.
                System.Console.WriteLine(
                    "New element is not of the correct type.");
            }

            // Set objs to an array of objects instead of
            // an array of strings.
            objs  = new Object[3];
            try
            {
                objs[0] = (Object) "Turtle";
                objs[1] = (Object) 12;
                objs[2] = (Object) 2.341;

                foreach (object element in objs)
                {
                    System.Console.WriteLine(element);
                }
            }
            catch (System.ArrayTypeMismatchException)
            {
                // ArrayTypeMismatchException is not thrown this time.
                System.Console.WriteLine("Exception Thrown.");
            }
        }
    }
}

Açıklamalar

ArrayTypeMismatchException sistem öğeyi dizi için bildirilen türe dönüştüremediğinde oluşturulur. Örneğin, bu türler arasında dönüştürme desteklenmediğinden, türündeki String bir öğe dizide Int32 depolanamaz. Uygulamaların bu özel durumu oluşturması genellikle gereksizdir.

Aşağıdaki Microsoft ara dili (MSIL) yönergeleri şu şekildedir ArrayTypeMismatchException:

  • ldelem.<type>

  • ldelema

  • stelem.<type>

ArrayTypeMismatchException değeri 0x80131503 olan HRESULT COR_E_ARRAYTYPEMISMATCH kullanır.

örneğinin ilk özellik değerlerinin ArrayTypeMismatchExceptionlistesi için oluşturuculara ArrayTypeMismatchException bakın.

Oluşturucular

ArrayTypeMismatchException()

ArrayTypeMismatchException sınıfının yeni bir örneğini başlatır.

ArrayTypeMismatchException(SerializationInfo, StreamingContext)

ArrayTypeMismatchException sınıfının yeni bir örneğini serileştirilmiş verilerle başlatır.

ArrayTypeMismatchException(String)

Belirtilen hata iletisiyle sınıfının yeni bir örneğini ArrayTypeMismatchException başlatır.

ArrayTypeMismatchException(String, Exception)

Sınıfın ArrayTypeMismatchException yeni bir örneğini belirtilen bir hata iletisiyle ve bu özel durumun nedeni olan iç özel duruma başvuruyla başlatır.

Özellikler

Data

Özel durum hakkında kullanıcı tanımlı ek bilgiler sağlayan bir anahtar/değer çifti koleksiyonu alır.

(Devralındığı yer: Exception)
HelpLink

Bu özel durumla ilişkili yardım dosyasının bağlantısını alır veya ayarlar.

(Devralındığı yer: Exception)
HResult

Belirli bir özel duruma atanan kodlanmış sayısal bir değer olan HRESULT değerini alır veya ayarlar.

(Devralındığı yer: Exception)
InnerException

Exception Geçerli özel duruma neden olan örneği alır.

(Devralındığı yer: Exception)
Message

Geçerli özel durumu açıklayan bir ileti alır.

(Devralındığı yer: Exception)
Source

Hataya neden olan uygulamanın veya nesnenin adını alır veya ayarlar.

(Devralındığı yer: Exception)
StackTrace

Çağrı yığınındaki anlık çerçevelerin dize gösterimini alır.

(Devralındığı yer: Exception)
TargetSite

Geçerli özel durumu oluşturan yöntemini alır.

(Devralındığı yer: Exception)

Yöntemler

Equals(Object)

Belirtilen nesnenin geçerli nesneye eşit olup olmadığını belirler.

(Devralındığı yer: Object)
GetBaseException()

Türetilmiş bir sınıfta geçersiz kılındığında, sonraki bir veya daha fazla özel durumun kök nedeni olan değerini döndürür Exception .

(Devralındığı yer: Exception)
GetHashCode()

Varsayılan karma işlevi işlevi görür.

(Devralındığı yer: Object)
GetObjectData(SerializationInfo, StreamingContext)

Türetilmiş bir sınıfta geçersiz kılındığında, özel durum hakkındaki bilgilerle öğesini ayarlar SerializationInfo .

(Devralındığı yer: Exception)
GetType()

Geçerli örneğin çalışma zamanı türünü alır.

(Devralındığı yer: Exception)
MemberwiseClone()

Geçerli Objectöğesinin sığ bir kopyasını oluşturur.

(Devralındığı yer: Object)
ToString()

Geçerli özel durumun dize gösterimini oluşturur ve döndürür.

(Devralındığı yer: Exception)

Ekinlikler

SerializeObjectState
Kullanımdan kalktı.

Bir özel durum, özel durum hakkında serileştirilmiş veriler içeren bir özel durum nesnesi oluşturmak üzere seri hale getirildiğinde gerçekleşir.

(Devralındığı yer: Exception)

Şunlara uygulanır

Ürün Sürümler
.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
.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
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.5, 1.6, 2.0, 2.1
UWP 10.0

Ayrıca bkz.