RuntimeCompatibilityAttribute Klasa
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Określa, czy należy zawijać wyjątki, które nie pochodzą z Exception klasy z obiektem RuntimeWrappedException . Klasa ta nie może być dziedziczona.
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
- Dziedziczenie
- Atrybuty
W poniższym przykładzie kodu pokazano, jak zastosować RuntimeCompatibilityAttribute klasę do zestawu, który zgłasza String obiekt jako wyjątek w języku C++ i przechwytuje go przy użyciu RuntimeWrappedException obiektu.
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;
}
Niektóre języki, takie jak C++, umożliwiają zgłaszanie wyjątków dowolnego typu. Inne języki, takie jak Microsoft C# i Visual Basic, wymagają, aby każdy zgłoszony wyjątek pochodził z Exception klasy. Aby zachować zgodność między językami, środowisko uruchomieniowe języka wspólnego (CLR) opakowuje obiekty, które nie pochodzą z Exception obiektu RuntimeWrappedException .
Można użyć RuntimeCompatibilityAttribute klasy, aby określić, czy wyjątki powinny być opakowane wewnątrz bloków catch i filtrów wyjątków dla zestawu. Wiele kompilatorów języka, w tym kompilatorów języka Microsoft C# i Visual Basic, domyślnie stosuje ten atrybut, aby określić zachowanie opakowujące.
Należy pamiętać, że środowisko uruchomieniowe nadal zawija wyjątki, nawet jeśli używasz RuntimeCompatibilityAttribute klasy do określenia, że nie chcesz ich opakować. W takim przypadku wyjątki są niezapisane tylko wewnątrz bloków przechwytywania lub filtrów wyjątków.
Runtime |
Inicjuje nowe wystąpienie klasy RuntimeCompatibilityAttribute. |
Type |
Po zaimplementowaniu w klasie pochodnej pobiera unikatowy identyfikator dla tego elementu Attribute. (Odziedziczone po Attribute) |
Wrap |
Pobiera lub ustawia wartość wskazującą, czy należy zawijać wyjątki, które nie pochodzą z Exception klasy z obiektem RuntimeWrappedException . |
Equals(Object) |
Zwraca wartość wskazującą, czy to wystąpienie jest równe podanemu obiektowi. (Odziedziczone po Attribute) |
Get |
Zwraca wartość skrótu dla tego wystąpienia. (Odziedziczone po Attribute) |
Get |
Type Pobiera bieżące wystąpienie. (Odziedziczone po Object) |
Is |
W przypadku zastąpienia w klasie pochodnej wskazuje, czy wartość tego wystąpienia jest wartością domyślną klasy pochodnej. (Odziedziczone po Attribute) |
Match(Object) |
W przypadku zastąpienia w klasie pochodnej zwraca wartość wskazującą, czy to wystąpienie jest równe określonemu obiektowi. (Odziedziczone po Attribute) |
Memberwise |
Tworzy płytkią kopię bieżącego Objectelementu . (Odziedziczone po Object) |
To |
Zwraca ciąg reprezentujący bieżący obiekt. (Odziedziczone po Object) |
_Attribute. |
Zestaw nazw jest mapowany na odpowiedni zestaw identyfikatorów wysyłania. (Odziedziczone po Attribute) |
_Attribute. |
Pobiera informacje o typie obiektu, którego można użyć do pobrania informacji o typie interfejsu. (Odziedziczone po Attribute) |
_Attribute. |
Pobiera informację o liczbie typów interfejsów, jakie zawiera obiekt (0 lub 1). (Odziedziczone po Attribute) |
_Attribute. |
Umożliwia dostęp do właściwości i metod udostępnianych przez obiekt. (Odziedziczone po Attribute) |
Produkt | Wersje |
---|---|
.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, 10 |
.NET Framework | 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 |
Opinia o produkcie .NET
.NET to projekt typu open source. Wybierz link, aby przekazać opinię: