1 <?xml version="1.0" encoding="utf-8"?>
4 <name>System.Diagnostics.Contracts</name>
7 <member name="T:System.Diagnostics.Contracts.Contract">
8 <summary>包含用于表示程序协定(如前置条件、后置条件和对象固定)的静态方法。</summary>
10 <member name="M:System.Diagnostics.Contracts.Contract.Assert(System.Boolean)">
11 <summary>检查条件;如果条件为 false,则遵循为分析器设置的升级策略。</summary>
12 <param name="condition">要测试的条件表达式。</param>
14 <member name="M:System.Diagnostics.Contracts.Contract.Assert(System.Boolean,System.String)">
15 <summary>检查条件;如果条件为 false,则遵循分析器设置的升级策略并显示指定消息。</summary>
16 <param name="condition">要测试的条件表达式。</param>
17 <param name="userMessage">在不满足条件时要显示的消息。</param>
19 <member name="M:System.Diagnostics.Contracts.Contract.Assume(System.Boolean)">
20 <summary>指示代码分析工具假设指定的条件为 true(即使无法静态地证明该条件始终为 true)。</summary>
21 <param name="condition">假设为 true 的条件表达式。</param>
23 <member name="M:System.Diagnostics.Contracts.Contract.Assume(System.Boolean,System.String)">
24 <summary>指示代码分析工具假设指定的条件为 true(即使无法静态地证明该条件始终为 true)并在假设失败时显示一条消息。</summary>
25 <param name="condition">假设为 true 的条件表达式。</param>
26 <param name="userMessage">假设失败时要发布的消息。</param>
28 <member name="E:System.Diagnostics.Contracts.Contract.ContractFailed">
29 <summary>协定失败时发生。</summary>
31 <member name="M:System.Diagnostics.Contracts.Contract.EndContractBlock">
32 <summary>当方法的协定仅包含 if-then-throw 形式的前置条件时,标记协定部分的结尾。</summary>
34 <member name="M:System.Diagnostics.Contracts.Contract.Ensures(System.Boolean)">
35 <summary>为封闭方法或属性指定一个后置条件协定。</summary>
36 <param name="condition">要测试的条件表达式。该表达式可以包括 <see cref="M:System.Diagnostics.Contracts.Contract.OldValue``1(``0)" />、<see cref="M:System.Diagnostics.Contracts.Contract.ValueAtReturn``1(``0@)" /> 和 <see cref="M:System.Diagnostics.Contracts.Contract.Result``1" /> 值。</param>
38 <member name="M:System.Diagnostics.Contracts.Contract.Ensures(System.Boolean,System.String)">
39 <summary>为提供的退出条件指定后置条件协定,并指定条件为 false 时要显示的消息。</summary>
40 <param name="condition">要测试的条件表达式。该表达式可以包括 <see cref="M:System.Diagnostics.Contracts.Contract.OldValue``1(``0)" /> 和 <see cref="M:System.Diagnostics.Contracts.Contract.Result``1" /> 值。</param>
41 <param name="userMessage">表达式不为 true 时要显示的消息。</param>
43 <member name="M:System.Diagnostics.Contracts.Contract.EnsuresOnThrow``1(System.Boolean)">
44 <summary>基于提供的异常和条件为封闭方法或属性指定一个后置条件协定。</summary>
45 <param name="condition">要测试的条件表达式。</param>
46 <typeparam name="TException">引发后置条件检查的异常的类型。</typeparam>
48 <member name="M:System.Diagnostics.Contracts.Contract.EnsuresOnThrow``1(System.Boolean,System.String)">
49 <summary>基于提供的异常和条件为封闭方法或属性指定一个后置条件协定,并指定条件为 false 时要显示的消息。</summary>
50 <param name="condition">要测试的条件表达式。</param>
51 <param name="userMessage">表达式为 false 时要显示的消息。</param>
52 <typeparam name="TException">引发后置条件检查的异常的类型。</typeparam>
54 <member name="M:System.Diagnostics.Contracts.Contract.Exists``1(System.Collections.Generic.IEnumerable{``0},System.Predicate{``0})">
55 <summary>确定函数中是否存在某个元素集合中的元素。</summary>
56 <returns>当且仅当 <paramref name="predicate" /> 对于 <paramref name="collection" /> 中的 <paramref name="T" /> 类型的任何元素都返回 true 时,才为 true。</returns>
57 <param name="collection">将从中提取 <paramref name="T" /> 类型的元素以将其传递给 <paramref name="predicate" /> 的集合。</param>
58 <param name="predicate">用于计算 <paramref name="collection" /> 中某个元素的函数。</param>
60 <paramref name="collection" /> 中包含的类型。</typeparam>
61 <exception cref="T:System.ArgumentNullException">
62 <paramref name="collection" /> or <paramref name="predicate" /> is null.</exception>
64 <member name="M:System.Diagnostics.Contracts.Contract.Exists(System.Int32,System.Int32,System.Predicate{System.Int32})">
65 <summary>确定指定的测试对某个整数范围中的任何整数是否都为 true。</summary>
66 <returns>如果 <paramref name="predicate" /> 对于从 <paramref name="fromInclusive" /> 到 <paramref name="toExclusive" /> - 1 范围内的任何整数都返回 true,则为 true。</returns>
67 <param name="fromInclusive">要传递给 <paramref name="predicate" /> 的第一个整数。</param>
68 <param name="toExclusive">要传递给 <paramref name="predicate" /> 的最后一个整数加一。</param>
69 <param name="predicate">用于计算指定范围内整数的任何值的函数。</param>
70 <exception cref="T:System.ArgumentNullException">
71 <paramref name="predicate" /> is null.</exception>
72 <exception cref="T:System.ArgumentException">
73 <paramref name="toExclusive " />is less than <paramref name="fromInclusive" />.</exception>
75 <member name="M:System.Diagnostics.Contracts.Contract.ForAll``1(System.Collections.Generic.IEnumerable{``0},System.Predicate{``0})">
76 <summary>确定函数中是否存在某个集合中的所有元素。</summary>
77 <returns>当且仅当 <paramref name="predicate" /> 对于 <paramref name="collection" /> 中的 <paramref name="T" /> 类型的全部元素都返回 true 时,才为 true。</returns>
78 <param name="collection">将从中提取 <paramref name="T" /> 类型的元素以将其传递给 <paramref name="predicate" /> 的集合。</param>
79 <param name="predicate">用于计算 <paramref name="collection" /> 中所有元素是否存在的函数。</param>
81 <paramref name="collection" /> 中包含的类型。</typeparam>
82 <exception cref="T:System.ArgumentNullException">
83 <paramref name="collection" /> or <paramref name="predicate" /> is null.</exception>
85 <member name="M:System.Diagnostics.Contracts.Contract.ForAll(System.Int32,System.Int32,System.Predicate{System.Int32})">
86 <summary>确定某个特定条件是否对指定范围内的所有整数都有效。</summary>
87 <returns>如果 <paramref name="predicate" /> 对于从 <paramref name="fromInclusive" /> 到 <paramref name="toExclusive" /> - 1 范围内的任何整数都返回 true,则为 true。</returns>
88 <param name="fromInclusive">要传递给 <paramref name="predicate" /> 的第一个整数。</param>
89 <param name="toExclusive">要传递给 <paramref name="predicate" /> 的最后一个整数加一。</param>
90 <param name="predicate">要计算其中是否存在指定范围内的整数的函数。</param>
91 <exception cref="T:System.ArgumentNullException">
92 <paramref name="predicate" /> is null.</exception>
93 <exception cref="T:System.ArgumentException">
94 <paramref name="toExclusive " />is less than <paramref name="fromInclusive" />.</exception>
96 <member name="M:System.Diagnostics.Contracts.Contract.Invariant(System.Boolean)">
97 <summary>为封闭方法或属性指定一个固定的协定。</summary>
98 <param name="condition">要测试的条件表达式。</param>
100 <member name="M:System.Diagnostics.Contracts.Contract.Invariant(System.Boolean,System.String)">
101 <summary>为封闭方法或属性指定一个固定协定,并在该协定的条件失败时显示一条消息。</summary>
102 <param name="condition">要测试的条件表达式。</param>
103 <param name="userMessage">条件为 false 时要显示的消息。</param>
105 <member name="M:System.Diagnostics.Contracts.Contract.OldValue``1(``0)">
106 <summary>表示方法或属性开始时的值。</summary>
107 <returns>一个方法或属性开始处的参数或字段的值。</returns>
108 <param name="value">要表示的值(字段或参数)。</param>
109 <typeparam name="T">值的类型。</typeparam>
111 <member name="M:System.Diagnostics.Contracts.Contract.Requires``1(System.Boolean)">
112 <summary>为封闭方法或属性指定一个前置条件协定,并在该协定的条件失败时引发异常。</summary>
113 <param name="condition">要测试的条件表达式。</param>
114 <typeparam name="TException">条件为 false 时要引发的异常。</typeparam>
116 <member name="M:System.Diagnostics.Contracts.Contract.Requires(System.Boolean)">
117 <summary>为封闭方法或属性指定一个前置条件协定。</summary>
118 <param name="condition">要测试的条件表达式。</param>
120 <member name="M:System.Diagnostics.Contracts.Contract.Requires(System.Boolean,System.String)">
121 <summary>为封闭方法或属性指定一个前置条件协定,并在该协定的条件失败时显示一条消息。</summary>
122 <param name="condition">要测试的条件表达式。</param>
123 <param name="userMessage">条件为 false 时要显示的消息。</param>
125 <member name="M:System.Diagnostics.Contracts.Contract.Requires``1(System.Boolean,System.String)">
126 <summary>为封闭方法或属性指定一个前置条件协定,并在该协定的条件失败时引发包含提供的消息的异常。</summary>
127 <param name="condition">要测试的条件表达式。</param>
128 <param name="userMessage">条件为 false 时要显示的消息。</param>
129 <typeparam name="TException">条件为 false 时要引发的异常。</typeparam>
131 <member name="M:System.Diagnostics.Contracts.Contract.Result``1">
132 <summary>表示一个方法或属性的返回值。</summary>
133 <returns>封闭方法或属性的返回值。</returns>
134 <typeparam name="T">封闭方法或属性的返回值的类型。</typeparam>
136 <member name="M:System.Diagnostics.Contracts.Contract.ValueAtReturn``1(``0@)">
137 <summary>表示从一个方法返回时 out 参数的最终(输出)值。</summary>
138 <returns>out 参数的输出值。</returns>
139 <param name="value">out 参数。</param>
140 <typeparam name="T">out 参数的类型。</typeparam>
142 <member name="T:System.Diagnostics.Contracts.ContractAbbreviatorAttribute">
143 <summary>定义您可用于替代完整协定语法的缩写。</summary>
145 <member name="M:System.Diagnostics.Contracts.ContractAbbreviatorAttribute.#ctor">
146 <summary>初始化 <see cref="T:System.Diagnostics.Contracts.ContractAbbreviatorAttribute" /> 类的新实例。</summary>
148 <member name="T:System.Diagnostics.Contracts.ContractArgumentValidatorAttribute">
149 <summary>启用旧的 if-then-throw 代码分离为单独的方法以重用,并提供对引发的异常和参数的完全控制。</summary>
151 <member name="M:System.Diagnostics.Contracts.ContractArgumentValidatorAttribute.#ctor">
152 <summary>初始化 <see cref="T:System.Diagnostics.Contracts.ContractArgumentValidatorAttribute" /> 类的新实例。</summary>
154 <member name="T:System.Diagnostics.Contracts.ContractClassAttribute">
155 <summary>指定一个单独的类型包含此类型的代码协定。</summary>
157 <member name="M:System.Diagnostics.Contracts.ContractClassAttribute.#ctor(System.Type)">
158 <summary>初始化 <see cref="T:System.Diagnostics.Contracts.ContractClassAttribute" /> 类的新实例。</summary>
159 <param name="typeContainingContracts">包含此类型的代码协定的类型。</param>
161 <member name="P:System.Diagnostics.Contracts.ContractClassAttribute.TypeContainingContracts">
162 <summary>获取包含此类型的代码协定的类型。</summary>
163 <returns>包含此类型的代码协定的类型。</returns>
165 <member name="T:System.Diagnostics.Contracts.ContractClassForAttribute">
166 <summary>指定一个类是某个类型的协定。</summary>
168 <member name="M:System.Diagnostics.Contracts.ContractClassForAttribute.#ctor(System.Type)">
169 <summary>初始化 <see cref="T:System.Diagnostics.Contracts.ContractClassForAttribute" /> 类的新实例,并指定使用当前类作为协定的类型。</summary>
170 <param name="typeContractsAreFor">使用当前类作为协定的类型。</param>
172 <member name="P:System.Diagnostics.Contracts.ContractClassForAttribute.TypeContractsAreFor">
173 <summary>获取此代码协定应用于的类型。</summary>
174 <returns>此协定应用于的类型。</returns>
176 <member name="T:System.Diagnostics.Contracts.ContractFailedEventArgs">
177 <summary>为 <see cref="E:System.Diagnostics.Contracts.Contract.ContractFailed" /> 事件提供方法和数据。</summary>
179 <member name="M:System.Diagnostics.Contracts.ContractFailedEventArgs.#ctor(System.Diagnostics.Contracts.ContractFailureKind,System.String,System.String,System.Exception)">
180 <summary>为 <see cref="E:System.Diagnostics.Contracts.Contract.ContractFailed" /> 事件提供数据。</summary>
181 <param name="failureKind">用于指定失败的协定的枚举值之一。</param>
182 <param name="message">事件的消息。</param>
183 <param name="condition">事件的条件。</param>
184 <param name="originalException">导致事件的异常。</param>
186 <member name="P:System.Diagnostics.Contracts.ContractFailedEventArgs.Condition">
187 <summary>获取协定失败的条件。</summary>
188 <returns>失败的条件。</returns>
190 <member name="P:System.Diagnostics.Contracts.ContractFailedEventArgs.FailureKind">
191 <summary>获取失败的协定的类型。</summary>
192 <returns>用于指定失败的协定的类型的枚举值之一。</returns>
194 <member name="P:System.Diagnostics.Contracts.ContractFailedEventArgs.Handled">
195 <summary>指示是否已处理 <see cref="E:System.Diagnostics.Contracts.Contract.ContractFailed" /> 事件。</summary>
196 <returns>如果事件已被处理,则为 true;否则为 false。</returns>
198 <member name="P:System.Diagnostics.Contracts.ContractFailedEventArgs.Message">
199 <summary>获取描述 <see cref="E:System.Diagnostics.Contracts.Contract.ContractFailed" /> 事件的消息。</summary>
200 <returns>描述事件的消息。</returns>
202 <member name="P:System.Diagnostics.Contracts.ContractFailedEventArgs.OriginalException">
203 <summary>获取导致 <see cref="E:System.Diagnostics.Contracts.Contract.ContractFailed" /> 事件的原始异常。</summary>
204 <returns>导致事件的异常。</returns>
206 <member name="M:System.Diagnostics.Contracts.ContractFailedEventArgs.SetHandled">
207 <summary>将 <see cref="P:System.Diagnostics.Contracts.ContractFailedEventArgs.Handled" /> 属性设置为 true。</summary>
209 <member name="M:System.Diagnostics.Contracts.ContractFailedEventArgs.SetUnwind">
210 <summary>将 <see cref="P:System.Diagnostics.Contracts.ContractFailedEventArgs.Unwind" /> 属性设置为 true。</summary>
212 <member name="P:System.Diagnostics.Contracts.ContractFailedEventArgs.Unwind">
213 <summary>指示是否应该应用代码协定升级策略。</summary>
214 <returns>若为 true,则应用升级策略;否则为 false。默认值为 false。</returns>
216 <member name="T:System.Diagnostics.Contracts.ContractFailureKind">
217 <summary>指定失败的协定的类型。</summary>
219 <member name="F:System.Diagnostics.Contracts.ContractFailureKind.Assert">
220 <summary>一个失败的 <see cref="Overload:System.Diagnostics.Contracts.Contract.Assert" /> 协定。</summary>
222 <member name="F:System.Diagnostics.Contracts.ContractFailureKind.Assume">
223 <summary>一个失败的 <see cref="Overload:System.Diagnostics.Contracts.Contract.Assume" /> 协定。</summary>
225 <member name="F:System.Diagnostics.Contracts.ContractFailureKind.Invariant">
226 <summary>一个失败的 <see cref="Overload:System.Diagnostics.Contracts.Contract.Invariant" /> 协定。</summary>
228 <member name="F:System.Diagnostics.Contracts.ContractFailureKind.Postcondition">
229 <summary>一个失败的 <see cref="Overload:System.Diagnostics.Contracts.Contract.Ensures" /> 协定。</summary>
231 <member name="F:System.Diagnostics.Contracts.ContractFailureKind.PostconditionOnException">
232 <summary>一个失败的 <see cref="Overload:System.Diagnostics.Contracts.Contract.EnsuresOnThrow" /> 协定。</summary>
234 <member name="F:System.Diagnostics.Contracts.ContractFailureKind.Precondition">
235 <summary>一个失败的 <see cref="Overload:System.Diagnostics.Contracts.Contract.Requires" /> 协定。</summary>
237 <member name="T:System.Diagnostics.Contracts.ContractInvariantMethodAttribute">
238 <summary>将一个方法标记为某个类的固定方法。</summary>
240 <member name="M:System.Diagnostics.Contracts.ContractInvariantMethodAttribute.#ctor">
241 <summary>初始化 <see cref="T:System.Diagnostics.Contracts.ContractInvariantMethodAttribute" /> 类的新实例。</summary>
243 <member name="T:System.Diagnostics.Contracts.ContractOptionAttribute">
244 <summary>可以在程序集、类型或方法粒度方面设置协定和工具选项。</summary>
246 <member name="M:System.Diagnostics.Contracts.ContractOptionAttribute.#ctor(System.String,System.String,System.Boolean)">
247 <summary>使用提供的类别,设置和可用
248 或禁用值初始化 <see cref="T:System.Diagnostics.Contracts.ContractOptionAttribute" /> 类的新实例。</summary>
249 <param name="category">要设置的选项的类别。</param>
250 <param name="setting">选项设置。</param>
251 <param name="enabled">启用选择,则为 true;禁用选择,则为 false。</param>
253 <member name="M:System.Diagnostics.Contracts.ContractOptionAttribute.#ctor(System.String,System.String,System.String)">
254 <summary>使用提供的类别,设置和可用
255 或禁用值初始化 <see cref="T:System.Diagnostics.Contracts.ContractOptionAttribute" /> 类的新实例。</summary>
256 <param name="category">要设置的选项的类别。</param>
257 <param name="setting">选项设置。</param>
258 <param name="value">此设置的值。</param>
260 <member name="P:System.Diagnostics.Contracts.ContractOptionAttribute.Category">
261 <summary>获取选项的类别。</summary>
262 <returns>选项的类别。</returns>
264 <member name="P:System.Diagnostics.Contracts.ContractOptionAttribute.Enabled">
265 <summary>确定选项是否启用。</summary>
266 <returns>如果启用该选项,则为 true;否则,为 false。</returns>
268 <member name="P:System.Diagnostics.Contracts.ContractOptionAttribute.Setting">
269 <summary>获得选项的设置。</summary>
270 <returns>此选项的设置。</returns>
272 <member name="P:System.Diagnostics.Contracts.ContractOptionAttribute.Value">
273 <summary>获取选项的值。</summary>
274 <returns>选项的值。</returns>
276 <member name="T:System.Diagnostics.Contracts.ContractPublicPropertyNameAttribute">
277 <summary>指定在某个字段的可见性低于方法时可在方法协定中使用该字段。</summary>
279 <member name="M:System.Diagnostics.Contracts.ContractPublicPropertyNameAttribute.#ctor(System.String)">
280 <summary>初始化 <see cref="T:System.Diagnostics.Contracts.ContractPublicPropertyNameAttribute" /> 类的新实例。</summary>
281 <param name="name">要应用于字段的属性名称。</param>
283 <member name="P:System.Diagnostics.Contracts.ContractPublicPropertyNameAttribute.Name">
284 <summary>获取要应用于字段的属性名称。</summary>
285 <returns>要应用于字段的属性名称。</returns>
287 <member name="T:System.Diagnostics.Contracts.ContractReferenceAssemblyAttribute">
288 <summary>指定一个程序集是包含协定的引用程序集。</summary>
290 <member name="M:System.Diagnostics.Contracts.ContractReferenceAssemblyAttribute.#ctor">
291 <summary>初始化 <see cref="T:System.Diagnostics.Contracts.ContractReferenceAssemblyAttribute" /> 类的新实例。</summary>
293 <member name="T:System.Diagnostics.Contracts.ContractRuntimeIgnoredAttribute">
294 <summary>标识没有运行时行为的成员。</summary>
296 <member name="M:System.Diagnostics.Contracts.ContractRuntimeIgnoredAttribute.#ctor">
297 <summary>初始化 <see cref="T:System.Diagnostics.Contracts.ContractRuntimeIgnoredAttribute" /> 类的新实例。</summary>
299 <member name="T:System.Diagnostics.Contracts.ContractVerificationAttribute">
300 <summary>指示分析工具假定程序集、类型或成员的正确性,而不执行静态验证。</summary>
302 <member name="M:System.Diagnostics.Contracts.ContractVerificationAttribute.#ctor(System.Boolean)">
303 <summary>初始化 <see cref="T:System.Diagnostics.Contracts.ContractVerificationAttribute" /> 类的新实例。</summary>
304 <param name="value">若为 true,则需要验证;否则为 false。</param>
306 <member name="P:System.Diagnostics.Contracts.ContractVerificationAttribute.Value">
307 <summary>获取指示是否验证目标的协定的值。</summary>
308 <returns>如果需要验证,则为 true;否则为 false。</returns>
310 <member name="T:System.Diagnostics.Contracts.PureAttribute">
311 <summary>指示一个类型或方法为纯类型或纯方法,即它不进行任何可视的状态更改。</summary>
313 <member name="M:System.Diagnostics.Contracts.PureAttribute.#ctor">
314 <summary>初始化 <see cref="T:System.Diagnostics.Contracts.PureAttribute" /> 类的新实例。</summary>
316 <member name="T:System.Runtime.CompilerServices.ContractHelper">
317 <summary>提供二进制重写工具用来处理协定失败的方法。</summary>
319 <member name="M:System.Runtime.CompilerServices.ContractHelper.RaiseContractFailedEvent(System.Diagnostics.Contracts.ContractFailureKind,System.String,System.String,System.Exception)">
320 <summary>由二进制重写工具用来激活默认失败行为。</summary>
321 <returns>如果事件已经过处理且不应触发失败,则为空引用(在 Visual Basic 中为 Nothing);否则返回本地化的失败消息。</returns>
322 <param name="failureKind">指定故障类型的枚举值之一。</param>
323 <param name="userMessage">其他用户信息。</param>
324 <param name="conditionText">对导致失败的条件的说明。</param>
325 <param name="innerException">导致当前异常的内部异常。</param>
326 <exception cref="T:System.ArgumentException">
327 <paramref name="failureKind" /> 不是有效的 <see cref="T:System.Diagnostics.Contracts.ContractFailureKind" /> 值。</exception>
329 <member name="M:System.Runtime.CompilerServices.ContractHelper.TriggerFailure(System.Diagnostics.Contracts.ContractFailureKind,System.String,System.String,System.String,System.Exception)">
330 <summary>触发默认失败行为。</summary>
331 <param name="kind">指定故障类型的枚举值之一。</param>
332 <param name="displayMessage">要显示的消息。</param>
333 <param name="userMessage">其他用户信息。</param>
334 <param name="conditionText">对导致失败的条件的说明。</param>
335 <param name="innerException">导致当前异常的内部异常。</param>