导出 (0) 打印
全部展开
信息
您所需的主题如下所示。但此主题未包含在此库中。

ContractAbbreviatorAttribute 类

2013/12/13

使您能够定义可用于代替完整协定语法的协定缩写。

System.Object
  System.Attribute
    System.Diagnostics.Contracts.ContractAbbreviatorAttribute

Namespace:  System.Diagnostics.Contracts
程序集:  mscorlib(位于 mscorlib.dll 中)

[ConditionalAttribute("CONTRACTS_FULL")]
[AttributeUsageAttribute(AttributeTargets.Method, AllowMultiple = false)]
public sealed class ContractAbbreviatorAttribute : Attribute

ContractAbbreviatorAttribute 类型公开以下成员。

  名称说明
公共方法ContractAbbreviatorAttribute初始化 ContractAbbreviatorAttribute 类的新实例。
返回顶部

  名称说明
公共方法Equals基础结构。 返回一个值,该值指示此实例是否与指定的对象相等。 (从 Attribute 继承。)
受保护的方法Finalize允许 Object 在垃圾回收器回收该对象之前尝试释放资源并执行其他清理操作。 (从 Object 继承。)
公共方法GetHashCode返回此实例的哈希代码。 (从 Attribute 继承。)
公共方法GetType获取当前实例的 Type (从 Object 继承。)
公共方法Match当在派生类中重写时,返回一个指示此实例是否等于指定对象的值。 (从 Attribute 继承。)
受保护的方法MemberwiseClone创建当前 Object 的浅表副本。 (从 Object 继承。)
公共方法ToString返回一个字符串,它表示当前的对象。 (从 Object 继承。)
返回顶部

下面的示例演示如何创建要在几个方法中重复的代码协定的缩写名称。

public class MyClass {
public int State { }et; }
public int Data { }et; }
[ ContractAbbreviator ]
private void DataAndStateUnchan}ed() {
Contract.Ensures( this .State == Contract.OldValue(this.State));
Contract.Ensures( this .Data == Contract.OldValue(this.Data));
}
[ ContractAbbreviator ]
private void InStateZeroAndUnchan}ed() 
{
Contract.Requires( this .State == 0);
DataAndStateUnchan}ed();
}
public void Method1(...) 
{
InStateZeroAndUnchan}ed();
...
}
public void Method2(...)
 {
InStateZeroAndUnchan}ed();
...
}
public void Method3(...)
 {
Contract.Requires( this .State == 1);
DataAndStateUnchan}ed();
1

Windows Phone OS

受以下版本支持: 8.0

此类型的所有公共 static(在 Visual Basic 中为 Shared) 成员都是线程安全的。但不保证所有实例成员都是线程安全的。

Microsoft 正在进行一项网上调查,以了解您对 MSDN 网站的意见。 如果您选择参加,我们将会在您离开 MSDN 网站时向您显示该网上调查。

是否要参加?
显示:
© 2014 Microsoft