RuntimeCompatibilityAttribute Osztály

Definíció

Megadja, hogy az objektummal Exception nem az osztályból RuntimeWrappedException származó kivételeket tördelje-e. Ez az osztály nem örökölhető.

public ref class RuntimeCompatibilityAttribute sealed : Attribute
[System.AttributeUsage(System.AttributeTargets.Assembly, AllowMultiple=false, Inherited=false)]
public sealed class RuntimeCompatibilityAttribute : Attribute
[System.AttributeUsage(System.AttributeTargets.Assembly, AllowMultiple=false, Inherited=false)]
[System.Serializable]
public sealed class RuntimeCompatibilityAttribute : Attribute
[<System.AttributeUsage(System.AttributeTargets.Assembly, AllowMultiple=false, Inherited=false)>]
type RuntimeCompatibilityAttribute = class
    inherit Attribute
[<System.AttributeUsage(System.AttributeTargets.Assembly, AllowMultiple=false, Inherited=false)>]
[<System.Serializable>]
type RuntimeCompatibilityAttribute = class
    inherit Attribute
Public NotInheritable Class RuntimeCompatibilityAttribute
Inherits Attribute
Öröklődés
RuntimeCompatibilityAttribute
Attribútumok

Példák

Az alábbi példakód bemutatja, hogyan alkalmazhatja az RuntimeCompatibilityAttribute osztályt egy olyan szerelvényre, amely kivételként egy objektumot a C++-ban dob ki String , és egy RuntimeWrappedException objektummal elkapja.

using namespace System;
using namespace System::Runtime::CompilerServices;

[assembly:RuntimeCompatibilityAttribute(WrapNonExceptionThrows = true)]; 

void run()
{
    try
    {
        throw gcnew String("This is a string");

    }
    catch(RuntimeWrappedException^ e)
    {
        Console::WriteLine("RuntimeWrappedException caught!");
    }
}

int main()
{
    run();

    return 0;
}

Megjegyzések

Egyes nyelvek, például a C++ lehetővé teszik, hogy bármilyen típusú kivételt adjon ki. Más nyelvek, például a Microsoft C# és Visual Basic megkövetelik, hogy minden kidobott kivételt a Exception osztályból származtassunk. A nyelvek közötti kompatibilitás fenntartása érdekében a közös nyelvi futtatókörnyezet (CLR) olyan objektumokat burkol, amelyek nem egy Exception objektumból RuntimeWrappedException származnak.

Az osztály használatával RuntimeCompatibilityAttribute megadhatja, hogy a kivételek megjelenjenek-e egy szerelvény fogásblokkokba és kivételszűrőibe csomagolva. Számos nyelvfordító, köztük a Microsoft C# és Visual Basic fordítók alapértelmezés szerint ezt az attribútumot alkalmazzák a körbefuttatási viselkedés megadásához.

Vegye figyelembe, hogy a futtatókörnyezet továbbra is tördeli a kivételeket, még akkor is, ha az RuntimeCompatibilityAttribute osztály használatával adja meg, hogy nem szeretné becsomagolni őket. Ebben az esetben a kivételek csak a fogási blokkokban vagy kivételszűrőkben vannak feloldva.

Konstruktorok

Name Description
RuntimeCompatibilityAttribute()

Inicializálja a RuntimeCompatibilityAttribute osztály új példányát.

Tulajdonságok

Name Description
TypeId

Ha származtatott osztályban implementálják, ehhez egy egyedi azonosítót Attributekap.

(Öröklődés forrása Attribute)
WrapNonExceptionThrows

Beolvas vagy beállít egy értéket, amely jelzi, hogy az objektummal rendelkező Exception osztályból RuntimeWrappedException nem származó kivételeket tördeli-e.

Metódusok

Name Description
Equals(Object)

Olyan értéket ad vissza, amely jelzi, hogy ez a példány egyenlő-e egy adott objektummal.

(Öröklődés forrása Attribute)
GetHashCode()

A példány kivonatkódját adja vissza.

(Öröklődés forrása Attribute)
GetType()

Lekéri az Type aktuális példányt.

(Öröklődés forrása Object)
IsDefaultAttribute()

Ha egy származtatott osztályban felül van bírálva, azt jelzi, hogy a példány értéke-e a származtatott osztály alapértelmezett értéke.

(Öröklődés forrása Attribute)
Match(Object)

Származtatott osztály felülírásakor egy olyan értéket ad vissza, amely jelzi, hogy ez a példány egy adott objektummal egyenlő-e.

(Öröklődés forrása Attribute)
MemberwiseClone()

Az aktuális Objectpéldány sekély másolatát hozza létre.

(Öröklődés forrása Object)
ToString()

Az aktuális objektumot jelképező sztringet ad vissza.

(Öröklődés forrása Object)

Explicit interfész-implementációk

Name Description
_Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr)

Névkészletet képez le a küldési azonosítók megfelelő készletére.

(Öröklődés forrása Attribute)
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr)

Lekéri egy objektum típusadatait, amelyek a felület típusadatainak lekérésére használhatók.

(Öröklődés forrása Attribute)
_Attribute.GetTypeInfoCount(UInt32)

Lekéri az objektumok által biztosított típusinformációs felületek számát (0 vagy 1).

(Öröklődés forrása Attribute)
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

Hozzáférést biztosít az objektumok által közzétett tulajdonságokhoz és metódusokhoz.

(Öröklődés forrása Attribute)

A következőre érvényes: