RuntimeWrappedException 类

定义

包装不是从 Exception 类派生的异常。 此类不能被继承。

public ref class RuntimeWrappedException sealed : Exception
public sealed class RuntimeWrappedException : Exception
[System.Serializable]
public sealed class RuntimeWrappedException : Exception
type RuntimeWrappedException = class
    inherit Exception
[<System.Serializable>]
type RuntimeWrappedException = class
    inherit Exception
Public NotInheritable Class RuntimeWrappedException
Inherits Exception
继承
RuntimeWrappedException
属性

示例

下面的代码示例演示如何在 C++ 中将对象作为异常引发, 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) 包装不在对象中RuntimeWrappedException派生Exception的对象。

可以使用 RuntimeCompatibilityAttribute 类指定是否应将异常包装在程序集的 catch 块和异常筛选器内。 许多语言编译器(包括 Microsoft C# 和 Visual Basic 编译器)默认应用此属性以指定包装行为。

请注意,即使使用 RuntimeCompatibilityAttribute 类指定不希望包装异常,运行时也会包装异常。 在这种情况下,异常仅在 catch 块或异常筛选器内解包。

构造函数

RuntimeWrappedException(Object)

初始化包含内部异常对象的 RuntimeWrappedException 的新实例。

属性

Data

获取键/值对的集合,这些键/值对提供有关该异常的其他用户定义信息。

(继承自 Exception)
HelpLink

获取或设置指向与此异常关联的帮助文件链接。

(继承自 Exception)
HResult

获取或设置 HRESULT(一个分配给特定异常的编码数字值)。

(继承自 Exception)
InnerException

获取导致当前异常的 Exception 实例。

(继承自 Exception)
Message

获取描述当前异常的消息。

(继承自 Exception)
Source

获取或设置导致错误的应用程序或对象的名称。

(继承自 Exception)
StackTrace

获取调用堆栈上的即时框架字符串表示形式。

(继承自 Exception)
TargetSite

获取引发当前异常的方法。

(继承自 Exception)
WrappedException

获取由 RuntimeWrappedException 对象包装的对象。

方法

Equals(Object)

确定指定对象是否等于当前对象。

(继承自 Object)
GetBaseException()

当在派生类中重写时,返回 Exception,它是一个或多个并发的异常的根本原因。

(继承自 Exception)
GetHashCode()

作为默认哈希函数。

(继承自 Object)
GetObjectData(SerializationInfo, StreamingContext)

使用有关异常的信息设置 SerializationInfo 对象。

GetType()

获取当前实例的运行时类型。

(继承自 Exception)
MemberwiseClone()

创建当前 Object 的浅表副本。

(继承自 Object)
ToString()

创建并返回当前异常的字符串表示形式。

(继承自 Exception)

事件

SerializeObjectState
已过时。

当异常被序列化用来创建包含有关该异常的徐列出数据的异常状态对象时会出现该问题。

(继承自 Exception)

适用于