Contract.EnsuresOnThrow 方法

定义

基于提供的异常和条件为封闭方法或属性指定一个后置条件协定。

重载

EnsuresOnThrow<TException>(Boolean)

基于提供的异常和条件为封闭方法或属性指定一个后置条件协定。

EnsuresOnThrow<TException>(Boolean, String)

基于提供的异常和条件为封闭方法或属性指定后置条件协定,并指定条件为 false 时要显示的消息。

EnsuresOnThrow<TException>(Boolean)

Source:
Contracts.cs
Source:
Contracts.cs
Source:
Contracts.cs

基于提供的异常和条件为封闭方法或属性指定一个后置条件协定。

[System.Diagnostics.Conditional("CONTRACTS_FULL")]
public static void EnsuresOnThrow<TException> (bool condition) where TException : Exception;

类型参数

TException

引发后置条件检查的异常的类型。

参数

condition
Boolean

要测试的条件表达式。

属性

注解

参数condition指定在封闭方法或属性异常终止并引发 类型TException异常时预期的true后置条件。

  • 此方法调用必须在方法或属性的开头,在任何其他代码之前。

  • 此合同向客户端公开;因此,它只能引用至少与封闭方法一样可见的成员。

  • 必须使用二进制重写器在运行时强制实施此后置条件。

适用于

.NET 9 和其他版本
产品 版本
.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
.NET Framework 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 2.0, 2.1
UWP 10.0

EnsuresOnThrow<TException>(Boolean, String)

Source:
Contracts.cs
Source:
Contracts.cs
Source:
Contracts.cs

基于提供的异常和条件为封闭方法或属性指定后置条件协定,并指定条件为 false 时要显示的消息。

[System.Diagnostics.Conditional("CONTRACTS_FULL")]
public static void EnsuresOnThrow<TException> (bool condition, string userMessage) where TException : Exception;
[System.Diagnostics.Conditional("CONTRACTS_FULL")]
public static void EnsuresOnThrow<TException> (bool condition, string? userMessage) where TException : Exception;

类型参数

TException

引发后置条件检查的异常的类型。

参数

condition
Boolean

要测试的条件表达式。

userMessage
String

表达式为 false 时要显示的消息。

属性

注解

参数condition指定在封闭方法或属性异常终止并引发 类型TException异常时预期的true后置条件。 参数 message 指定条件为 false时要显示的消息。

  • 此方法调用必须在方法或属性的开头,在任何其他代码之前。

  • 此合同向客户端公开;因此,它只能引用至少与封闭方法一样可见的成员。

  • 必须使用二进制重写器在运行时强制实施此后置条件。

  • 如果 userMessage 不是常量字符串文本,则工具可能无法理解协定。

适用于

.NET 9 和其他版本
产品 版本
.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
.NET Framework 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 2.0, 2.1
UWP 10.0