System.Runtime 命名空间

System.Runtime 及其子命名空间(System.Runtime.CompilerServices、System.Runtime.ExceptionServices、System.Runtime.InteropServices、System.Runtime.InteropServices.ComTypes、System.Runtime.InteropServices.WindowsRuntime、System.Runtime.Serialization、System.Runtime.Serialization.Json 和 System.Runtime.Versioning)包含支持应用程序与公共语言运行时之交互的类型,以及可启用高级异常处理、COM 互操作、序列化和反序列化、版本控制等功能的类型。

本主题显示适用于 Windows 应用商店应用的 .NET 中包括的 System.Runtime 命名空间中的类型。请注意,适用于 Windows 应用商店应用的 .NET 不包含每个类型的所有成员。有关各个类型的信息,请参见链接的主题。类型的文档指示 适用于 Windows 应用商店应用的 .NET中包括哪些成员。

System.Runtime 命名空间

适用于 Windows 应用商店应用的 .NET 中支持的类型

说明

GCLatencyMode

调整垃圾收集器侵入应用程序的时间。

GCSettings

指定当前进程的垃圾回收设置。

System.Runtime.CompilerServices 命名空间

适用于 Windows 应用商店应用的 .NET 中支持的类型

说明

AccessedThroughPropertyAttribute

指定访问特性化字段的属性的名称。

AsyncStateMachineAttribute

用于确定用“Async”(Visual Basic) 还是“async”(C# 参考)修饰符标记方法。

AsyncTaskMethodBuilder

表示用于返回任务的异步方法的生成器。

AsyncTaskMethodBuilder<TResult>

表示用于可返回任务的异步方法的生成器并为结果提供参数。

AsyncVoidMethodBuilder

表示用于不返回值的异步方法的生成器。

CallerFilePathAttribute

用于获取包含调用方的源文件的完整路径。这是编译时的文件路径。

CallerLineNumberAttribute

用于获取源文件中调用方法所在的行号。

CallerMemberNameAttribute

用于获取方法或方法调用方的属性名称。

CallSite

表示动态调用站点基类。此类型用作动态站点目标的参数类型。

CallSite<T>

表示动态站点类型。

CallSiteBinder

处理动态调用站点上动态操作的运行时绑定。

CallSiteHelpers

包含用于 DLR 调用站点的帮助器方法。

CompilationRelaxationsAttribute

控制由公共语言运行时的实时 (JIT) 编译器生成的代码的严格性。

CompilerGeneratedAttribute

区分编译器生成的元素与用户生成的元素。无法继承此类。

ConditionalWeakTable<TKey, TValue>

使编译器可以将对象字段动态附加到托管对象。

ConditionalWeakTable<TKey, TValue>.CreateValueCallback

表示一个方法,该方法用于创建非默认值以将其作为键/值对的一部分添加到 ConditionalWeakTable<T, T> 对象中。

ConfiguredTaskAwaitable

提供可等待对象,其允许在 Task 上配置等待。

ConfiguredTaskAwaitable.ConfiguredTaskAwaiter

为 ConfiguredTaskAwaitable 提供等候程序。

ConfiguredTaskAwaitable<TResult>

提供可等待对象,其允许在 Task<T> 上配置等待。

ConfiguredTaskAwaitable<TResult>.ConfiguredTaskAwaiter

为 ConfiguredTaskAwaitable<T> 提供等候程序。

ContractHelper

提供二进制重写工具用来处理协定失败的方法。

CustomConstantAttribute

定义一个编译器可以为字段或方法参数永久保存的常数值。

DateTimeConstantAttribute

为字段或参数永久保存一个 8 字节的 DateTime 常数。

DecimalConstantAttribute

在元数据中存储 Decimal 常数的值。无法继承此类。

DynamicAttribute

指示在成员上使用 Object 应被视为动态调度的类型。

ExtensionAttribute

指示某个方法为扩展方法,或某个类或程序集包含扩展方法。

FixedBufferAttribute

指示字段应被视为包含指定基元类型的固定数目的元素。无法继承此类。

IAsyncStateMachine

表示为异步方法生成的状态机。此类型仅供编译器使用。

ICriticalNotifyCompletion

表示等候程序,其计划等待操作完成时的后续部分。

IndexerNameAttribute

指示使索引器在不直接支持索引器的编程语言中已知的名称。

INotifyCompletion

表示操作,其计划等待操作完成时的后续部分。

InternalsVisibleToAttribute

指定通常仅在当前程序集中可见的类型对指定程序集可见。

IStrongBox

定义一个用于访问某个对象引用的值的属性。

IsVolatile

将字段标记为可变。无法继承此类。

IteratorStateMachineAttribute

允许你确定在 Visual Basic 中是否用 Iterator 修饰符标记方法。

MethodImplAttribute

指定如何实现某方法的详细信息。无法继承此类。

MethodImplOptions

定义如何实现某方法的详细信息。

ReferenceAssemblyAttribute

将程序集标识为包含元数据但不包含可执行代码的引用程序集。

RuntimeCompatibilityAttribute

指定是否用 System.Runtime.CompilerServices.RuntimeWrappedException 对象包装不派生自 Exception 类的异常。无法继承此类。

RuntimeHelpers

提供一组为编译器提供支持的静态方法和属性。无法继承此类。

StateMachineAttribute

允许你确定一个方法是否为状态机方法。

StrongBox<T>

保存对某个值的引用。

TaskAwaiter

提供对象,其等待异步任务的完成。

TaskAwaiter<TResult>

表示等待异步任务完成的对象,并提供结果的参数。

TypeForwardedFromAttribute

指定另一个程序集中的源 Type。

TypeForwardedToAttribute

指定另一个程序集中的目标 Type。

UnsafeValueTypeAttribute

指定某个类型包含可能溢出的非托管数组。无法继承此类。

YieldAwaitable

提供可等待上下文,用于切换至目标环境。

YieldAwaitable.YieldAwaiter

提供等候程序,用于切换至目标环境。

System.Runtime.ExceptionServices 命名空间

适用于 Windows 应用商店应用的 .NET 中支持的类型

说明

ExceptionDispatchInfo

表示异常,其状态在特定代码点捕获。

System.Runtime.InteropServices 命名空间

适用于 Windows 应用商店应用的 .NET 中支持的类型

说明

ArrayWithOffset

在指定的数组中封装数组和偏移量。

BestFitMappingAttribute

控制是否将 Unicode 字符转换为最接近的匹配 ANSI 字符。

BStrWrapper

将 VT_BSTR 类型的数据从托管代码封送到非托管代码。无法继承此类。

CallingConvention

指定调用在非托管代码中实现的方法所需的调用约定。

CharSet

规定封送字符串应使用何种字符集。

ClassInterfaceAttribute

为向 COM 公开的类指定要生成的类接口的类型(如果有接口生成)。

ClassInterfaceType

标识为某个类生成的类接口的类型。

CoClassAttribute

指定从类型库中导入的 coclass 的类标识符。

ComAwareEventInfo

允许对事件处理程序进行后期绑定注册。

ComDefaultInterfaceAttribute

指定要向 COM 公开的默认接口。无法继承此类。

ComEventInterfaceAttribute

标识源接口和实现事件接口(从 COM 类型库导入 coclass 时生成)的方法的类。

ComEventsHelper

提供允许将处理事件的 .NET Framework 委托添加到 COM 对象和从 COM 对象中删除这些委托的方法。

COMException

当从 COM 方法调用返回无法识别的 HRESULT 时引发的异常。

ComImportAttribute

指示该特性化类型是以前在 COM 中定义的。

ComInterfaceType

标识如何向 COM 公开接口。

ComMemberType

描述 COM 成员的类型。

ComSourceInterfacesAttribute

为特性化类标识公开为 COM 事件源的一组接口。

ComVisibleAttribute

控制程序集中个别托管类型、成员或所有类型对 COM 的可访问性。

CriticalHandle

表示句柄资源的包装类。

CurrencyWrapper

对封送拆收器应该将其作为 VT_CY 封送的对象进行包装。

CustomQueryInterfaceMode

指示 GetComInterfaceForObject 方法的 IUnknown.QueryInterface 调用是否可以使用 ICustomQueryInterface 接口。

CustomQueryInterfaceResult

提供 GetInterface 方法的返回值。

DefaultCharSetAttribute

指定 CharSet 枚举的值。无法继承此类。

DefaultDllImportSearchPathsAttribute

指定用于搜索提供平台调用功能的 DLL 的路径。

DefaultParameterValueAttribute

当从支持默认参数的语言执行调用时,设置参数的默认值。无法继承此类。

DispatchWrapper

对封送拆收器应该将其作为 VT_DISPATCH 封送的对象进行包装。

DispIdAttribute

指定方法、字段或属性的 COM 调度标识符 (DISPID)。

DllImportAttribute

指示该特性化方法由非托管动态链接库 (DLL) 作为静态入口点公开。

DllImportSearchPath

指定用于搜索提供平台调用功能的 DLL 的路径。

ErrorWrapper

对封送拆收器应该将其作为 VT_ERROR 封送的对象进行包装。

FieldOffsetAttribute

指示字段在类或结构的非托管表示形式内的物理位置。

GCHandle

提供用于从非托管内存访问托管对象的方法。

GCHandleType

表示 GCHandle 类可以分配的句柄的类型。

GuidAttribute

当不需要自动 GUID 时提供显式的 GUID。

HandleCollector

跟踪未处理的句柄,并在达到指定阈值时强制执行垃圾回收。

ICustomAdapter

为客户端访问实际对象(而不是自定义封送拆收器分发的适配器对象)提供了一种方式。

ICustomQueryInterface

使开发人员能够提供 IUnknown.QueryInterface 方法的自定义托管实现。

InAttribute

指示应将数据从调用方封送到被调用方,而不返回到调用方。

InterfaceTypeAttribute

指示向 COM 公开时,托管接口是双重的还是仅支持调度的,或者是仅支持 IUnknown 的。

InvalidComObjectException

当使用无效的 COM 对象时引发的异常。

InvalidOleVariantTypeException

封送拆收器在遇到不能封送到托管代码的 Variant 类型的参数时引发的异常。

LayoutKind

控制当导出到非托管代码时对象的布局。

Marshal

提供了一个方法集,这些方法用于分配非托管内存、复制非托管内存块、将托管类型转换为非托管类型,此外还提供了在与非托管代码交互时使用的其他杂项方法。

MarshalAsAttribute

指示如何在托管代码和非托管代码之间封送数据。

MarshalDirectiveException

当封送拆收器遇到它不支持的 MarshalAsAttribute 时由该封送拆收器引发的异常。

OptionalAttribute

指示参数是可选的。

OutAttribute

指示应将数据从被调用方封送回调用方。

PreserveSigAttribute

指示应取消在 COM 互操作调用期间发生的 HRESULT 或 retval 签名转换。

SafeArrayRankMismatchException

如果传入的 SAFEARRAY 的秩与托管签名中指定的秩不匹配,则会引发异常。

SafeArrayTypeMismatchException

当传入的 SAFEARRAY 的类型与托管签名中指定的类型不匹配时引发的异常。

SafeBuffer

提供可用于读写的受控内存缓冲区。尝试访问受控缓冲区(不足和溢出)之外的内存将引发异常。

SafeHandle

表示操作系统句柄的包装类。必须继承此类。

SEHException

表示结构化异常处理 (SEH) 错误。

StructLayoutAttribute

允许你控制类或结构的数据字段的物理布局。

TypeIdentifierAttribute

提供对类型等效性的支持。

UnknownWrapper

对封送拆收器应该将其作为 VT_UNKNOWN 封送的对象进行包装。

UnmanagedFunctionPointerAttribute

控制作为非托管函数指针传入或传出非托管代码的委托签名的封送行为。无法继承此类。

UnmanagedType

确定如何将参数或字段封送到非托管代码。

VarEnum

指示当数组作为 SafeArray 从托管代码封送到非托管代码时,如何封送该数组的元素。

VariantWrapper

将 VT_VARIANT | VT_BYREF 类型的数据从托管代码封送到非托管代码。无法继承此类。

System.Runtime.InteropServices.ComTypes 命名空间

适用于 Windows 应用商店应用的 .NET 中支持的类型

说明

ADVF

在设置通知接收器或缓存与对象的连接时指定请求的行为。

BIND_OPTS

存储在名字对象绑定操作期间使用的参数。

BINDPTR

包含指向绑定到 FUNCDESC 结构、VARDESC 结构或 ITypeComp 接口的指针。

CALLCONV

标识 METHODDATA 数据类型结构中描述的方法所使用的调用约定。

CONNECTDATA

描述现有的到给定连接点的连接。

DATADIR

在 EnumFormatEtc 方法的 dwDirection 参数中指定数据流的方向。这将确定生成的枚举数可以枚举的格式。

DESCKIND

标识绑定到的类型说明。

DISPPARAMS

包含通过 IDispatch.Invoke 传递给方法或属性的参数。

DVASPECT

在绘制或获取数据时指定对象所需的数据或视图方位。

ELEMDESC

包含变量、函数或函数参数的类型说明以及进程传输信息。

ELEMDESC.DESCUNION

包含有关元素的信息。

EXCEPINFO

描述在 IDispatch.Invoke 期间发生的异常。

FILETIME

表示从 1601 年 1 月 1 日起的 100 毫微秒间隔数。此结构是一个 64 位值。

FORMATETC

表示通用剪贴板格式。

FUNCDESC

定义函数说明。

FUNCFLAGS

标识定义函数属性的常数。

FUNCKIND

定义如何访问函数。

IAdviseSink

提供 IAdviseSink 接口的托管定义。

IBindCtx

提供 IBindCtx 接口的托管定义。

IConnectionPoint

提供 IConnectionPoint 接口的托管定义。

IConnectionPointContainer

提供 IConnectionPointContainer 接口的托管定义。

IDLDESC

包含在进程之间传输结构元素、参数或函数返回值时所需的信息。

IDLFLAG

描述如何在进程之间传输结构元素、参数或函数返回值。

IEnumConnectionPoints

管理 IEnumConnectionPoints 接口的定义。

IEnumConnections

管理 IEnumConnections 接口的定义。

IEnumFORMATETC

提供 IEnumFORMATETC 接口的托管定义。

IEnumMoniker

管理 IEnumMoniker 接口的定义。

IEnumString

管理 IEnumString 接口的定义。

IEnumVARIANT

管理 IEnumVARIANT 接口的定义。

IMoniker

提供 IMoniker 接口的托管定义,使之具有 IPersist 和 IPersistStream 中的 COM 功能。

IMPLTYPEFLAGS

定义类型的实现或继承接口的特性。

INVOKEKIND

指定如何通过 IDispatch.Invoke 来调用函数。

IPersistFile

提供 IPersistFile 接口的托管定义,使之具有 IPersist 中的功能。

IRunningObjectTable

提供 IRunningObjectTable 接口的托管定义。

IStream

提供 IStream 接口的托管定义,使之具有 ISequentialStream 中的功能。

ITypeComp

提供 ITypeComp 接口的托管定义。

ITypeInfo

提供组件自动化 ITypeInfo 接口的托管定义。

ITypeInfo2

提供 ITypeInfo2 接口的托管定义。

ITypeLib

提供 ITypeLib 接口的托管定义。

ITypeLib2

提供 ITypeLib2 接口的托管定义。

LIBFLAGS

定义应用于类型库的标志。

PARAMDESC

包含有关如何在进程之间传输结构元素、参数或函数返回值的信息。

PARAMFLAG

描述如何在进程之间传输结构元素、参数或函数返回值。

STATDATA

提供 STATDATA 结构的托管定义。

STATSTG

包含有关打开的存储、流或字节数组对象的统计信息。

STGMEDIUM

提供 STGMEDIUM 结构的托管定义。

SYSKIND

标识目标操作系统平台。

TYMED

提供 TYMED 结构的托管定义。

TYPEATTR

包含 UCOMITypeInfo 的特性。

TYPEDESC

描述变量的类型、函数的返回类型或函数参数的类型。

TYPEFLAGS

定义类型说明的属性和特性。

TYPEKIND

指定各种类型的数据和函数。

TYPELIBATTR

标识特定类型库并为成员名称提供本地化支持。

VARDESC

描述变量、常数或数据成员。

VARDESC.DESCUNION

包含有关变量的信息。

VARFLAGS

标识定义变量属性的常数。

VARKIND

定义变量的种类。

System.Runtime.InteropServices.WindowsRuntime 命名空间

适用于 Windows 应用商店应用的 .NET 中支持的类型

说明

AsyncInfo

提供出厂默认方法,以构造托管任务的表示,这些任务与 Windows 运行时异步操作和操作兼容。

DefaultInterfaceAttribute

指定托管 Windows 运行时类或接口组的默认接口。

EventRegistrationToken

在将事件处理程序添加到在托管代码中实现的 Windows 运行时事件时返回的标记。该标记用于稍后从事件中删除事件处理程序。

EventRegistrationTokenTable<T>

存储委托与事件标记之间的映射,以便在托管代码中支持 Windows 运行时事件的实现。

IActivationFactory

使类被 Windows 运行时激活。

InterfaceImplementedInVersionAttribute

指定首次实现指定接口的目标类型版本。

ReadOnlyArrayAttribute

当应用于 Windows 运行时 组件的数组参数时,指定传递给该参数数组的内容只用于输入。调用方期望该数组是不变的调用。

ReturnValueNameAttribute

在 Windows 运行时 组件中指定方法的返回值的名称。

WindowsRuntimeBuffer

提供 Windows 运行时 IBuffer 接口 (Windows.Storage.Streams.IBuffer) 以及所需的全部其他接口的实现。

WindowsRuntimeBufferExtensions

提供用于在 Windows 运行时缓冲区(Windows.Storage.Streams.IBuffer 接口)中运行的扩展方法。

WindowsRuntimeMarshal

提供用于在 .NET Framework 和 Windows 运行时之间封送数据的帮助器方法。

WriteOnlyArrayAttribute

当应用于 Windows 运行时 组件的数组参数时,指定传递给该参数数组的内容只用于输出。调用方不保证内容初始化,因此,调用方法不应读取内容。

System.Runtime.Serialization 命名空间

适用于 Windows 应用商店应用的 .NET 中支持的类型

说明

CollectionDataContractAttribute

当应用于集合类型时,可用来对集合项元素进行自定义指定。此特性只能应用于被 DataContractSerializer 视为有效的可序列化集合的类型。

ContractNamespaceAttribute

指定数据协定的 CLR 命名空间和 XML 命名空间。

DataContractAttribute

指定该类型要定义或实现一个数据协定,并可由序列化程序(如 DataContractSerializer)进行序列化。若要使其类型可序列化,类型作者必须为其类型定义数据协定。

DataContractResolver

提供一种机制,用于在序列化和反序列化期间在类型和 xsi:type 表示之间动态进行相互映射。

DataContractSerializer

使用提供的数据协定,将类型实例序列化和反序列化为 XML 流或文档。无法继承此类。

DataContractSerializerSettings

指定数据协定序列化程序设置。

DataMemberAttribute

当应用于类型的成员时,指定该成员是数据协定的一部分并可由 DataContractSerializer 进行序列化。

DateTimeFormat

指定日期时间格式选择。

EmitTypeInformation

指定发出类型信息的频率。

EnumMemberAttribute

指定字段为枚举成员并且应该序列化。

IgnoreDataMemberAttribute

当应用于类型的成员时,指定该成员不是数据协定的一部分且没有进行序列化。

InvalidDataContractException

DataContractSerializer 或 NetDataContractSerializer 在序列化和反序列化的过程中遇到无效数据协定时引发的异常。

KnownTypeAttribute

指定 DataContractSerializer 在序列化或反序列化给定类型时应识别的类型。

OnDeserializedAttribute

如果将对象图应用于某方法,则应指定在反序列化该对象图中的对象后立即调用该方法。相对于图中其他对象的反序列化顺序是非确定性的。

OnDeserializingAttribute

将对象图应用于某方法时,指定反序列化该对象图中的对象时调用该方法。相对于图中其他对象的反序列化顺序是非确定性的。

OnSerializedAttribute

将对象图应用于某方法时,指定在序列化该对象图中的对象后调用该方法。相对于图中其他对象的序列化顺序是非确定性的。

OnSerializingAttribute

将对象图应用于某方法时,指定在序列化该对象图中的对象时调用该方法。相对于图中其他对象的序列化顺序是非确定性的。

SerializationException

在序列化或反序列化期间出错时所引发的异常。

StreamingContext

描述给定的序列化流的源和目标,并提供一个由调用方定义的附加上下文。

XmlObjectSerializer

提供用于将对象序列化为 XML 流或文档的基类。此类为抽象类。

System.Runtime.Serialization.Json 命名空间

适用于 Windows 应用商店应用的 .NET 中支持的类型

说明

DataContractJsonSerializer

将对象序列化为 JavaScript 对象表示法 (JSON),并将 JSON 数据反序列化为对象。无法继承此类。

DataContractJsonSerializerSettings

指定设置。

System.Runtime.Versioning 命名空间

适用于 Windows 应用商店应用的 .NET 类中支持的类型

说明

TargetFrameworkAttribute

标识某个特定程序集编译时针对的 .NET Framework 的版本。

请参见

概念

.NET for Windows Store 应用程序 - 支持的 API