RuntimeCompatibilityAttribute クラス

定義

Exception クラスから派生していない例外を RuntimeWrappedException オブジェクトでラップするかどうかを指定します。 このクラスは継承できません。

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
継承
RuntimeCompatibilityAttribute
属性

次のコード例では、C++ で例外としてオブジェクトを RuntimeCompatibilityAttribute スロー String し、 オブジェクトを使用してキャッチするアセンブリに クラスを適用する方法を RuntimeWrappedException 示します。

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;
}

注釈

C++ などの一部の言語では、任意の型の例外をスローできます。 Microsoft C# と Visual Basic の場合など、他の言語では、すべてスローされた例外から派生することが必要です、Exceptionクラス。 派生していないオブジェクトをラップする共通言語ランタイム (CLR) 言語の間の互換性を維持するためにExceptionで、RuntimeWrappedExceptionオブジェクト。

使用することができます、RuntimeCompatibilityAttributeクラスがアセンブリの例外を catch ブロックと例外フィルター内でラップされた表示にする必要があるかどうかを指定します。 Microsoft C# と Visual Basic のコンパイラを含む、多くの言語コンパイラでは、折り返し動作を指定する既定でこの属性を適用します。

クラスを使用 RuntimeCompatibilityAttribute して例外をラップしないように指定した場合でも、ランタイムは例外をラップします。 この場合、例外は catch ブロックまたは例外フィルター内でのみラップ解除されます。

コンストラクター

RuntimeCompatibilityAttribute()

RuntimeCompatibilityAttribute クラスの新しいインスタンスを初期化します。

プロパティ

TypeId

派生クラスで実装されると、この Attribute の一意の識別子を取得します。

(継承元 Attribute)
WrapNonExceptionThrows

Exception クラスから派生していない例外を RuntimeWrappedException オブジェクトでラップするかどうかを指定する値を取得または設定します。

メソッド

Equals(Object)

このインスタンスが、指定されたオブジェクトと等価であるかどうかを示す値を返します。

(継承元 Attribute)
GetHashCode()

このインスタンスのハッシュ コードを返します。

(継承元 Attribute)
GetType()

現在のインスタンスの Type を取得します。

(継承元 Object)
IsDefaultAttribute()

派生クラスでオーバーライドされるとき、このインスタンスの値が派生クラスの既定値であるかどうかを示します。

(継承元 Attribute)
Match(Object)

派生クラス内でオーバーライドされたときに、指定したオブジェクトとこのインスタンスが等しいかどうかを示す値を返します。

(継承元 Attribute)
MemberwiseClone()

現在の Object の簡易コピーを作成します。

(継承元 Object)
ToString()

現在のオブジェクトを表す文字列を返します。

(継承元 Object)

明示的なインターフェイスの実装

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

一連の名前を対応する一連のディスパッチ識別子に割り当てます。

(継承元 Attribute)
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr)

オブジェクトの型情報を取得します。この情報はインターフェイスの型情報の取得に使用できます。

(継承元 Attribute)
_Attribute.GetTypeInfoCount(UInt32)

オブジェクトが提供する型情報インターフェイスの数 (0 または 1) を取得します。

(継承元 Attribute)
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

オブジェクトによって公開されたプロパティおよびメソッドへのアクセスを提供します。

(継承元 Attribute)

適用対象