Aracılığıyla paylaş


Contract.Ensures Yöntem

Tanım

Kapsayan yöntem veya özellik için bir son koşul sözleşmesi belirtir.

Aşırı Yüklemeler

Ensures(Boolean)

Kapsayan yöntem veya özellik için bir son koşul sözleşmesi belirtir.

Ensures(Boolean, String)

Sağlanan çıkış koşulu için bir son koşul sözleşmesi ve koşul falseise görüntülenecek bir ileti belirtir.

Ensures(Boolean)

Kaynak:
Contracts.cs
Kaynak:
Contracts.cs
Kaynak:
Contracts.cs

Kapsayan yöntem veya özellik için bir son koşul sözleşmesi belirtir.

public:
 static void Ensures(bool condition);
[System.Diagnostics.Conditional("CONTRACTS_FULL")]
public static void Ensures (bool condition);
[<System.Diagnostics.Conditional("CONTRACTS_FULL")>]
static member Ensures : bool -> unit
Public Shared Sub Ensures (condition As Boolean)

Parametreler

condition
Boolean

Test etmek için koşullu ifade. İfade , ValueAtReturn<T>(T)ve Result<T>() değerlerini içerebilirOldValue<T>(T).

Öznitelikler

Örnekler

Aşağıdaki örnekte, beklenen bir değerin Ensures döndürülmesini sağlamak için yönteminin nasıl kullanılacağı gösterilmektedir. Bu kod örneği, sınıfı için ContractClassAttribute sağlanan daha büyük bir örneğin parçasıdır.

int IArray.Add(Object value)
{
    // Returns the index in which an item was inserted.
    Contract.Ensures(Contract.Result<int>() >= -1);
    Contract.Ensures(Contract.Result<int>() < ((IArray)this).Count);
    return default(int);
}
Function Add(ByVal value As Object) As Integer Implements IArray.Add
    ' Returns the index in which an item was inserted.
    Contract.Ensures(Contract.Result(Of Integer)() >= -1) '
    Contract.Ensures(Contract.Result(Of Integer)() < CType(Me, IArray).Count) '
    Return 0
    
End Function 'IArray.Add

Açıklamalar

parametresi, condition kapsayan yöntem veya özellik normal şekilde döndürdüğünde olması true beklenen bir son koşul belirtir.

  • Bu yöntem çağrısı, diğer kodlardan önce bir yöntemin veya özelliğin başında olmalıdır.

  • Bu son koşulun çalışma zamanı zorlaması için ikili yeniden yazma aracını (Visual Studio Market'teki Kod Sözleşmeleri'nde kullanılabilir) kullanmanız gerekir.

Şunlara uygulanır

Ensures(Boolean, String)

Kaynak:
Contracts.cs
Kaynak:
Contracts.cs
Kaynak:
Contracts.cs

Sağlanan çıkış koşulu için bir son koşul sözleşmesi ve koşul falseise görüntülenecek bir ileti belirtir.

public:
 static void Ensures(bool condition, System::String ^ userMessage);
[System.Diagnostics.Conditional("CONTRACTS_FULL")]
public static void Ensures (bool condition, string userMessage);
[System.Diagnostics.Conditional("CONTRACTS_FULL")]
public static void Ensures (bool condition, string? userMessage);
[<System.Diagnostics.Conditional("CONTRACTS_FULL")>]
static member Ensures : bool * string -> unit
Public Shared Sub Ensures (condition As Boolean, userMessage As String)

Parametreler

condition
Boolean

Test etmek için koşullu ifade. İfade ve Result<T>() değerlerini içerebilirOldValue<T>(T).

userMessage
String

İfade değilse truegörüntülenecek ileti.

Öznitelikler

Açıklamalar

parametresi, condition kapsayan yöntem veya özellik normal şekilde döndürdüğünde olması true beklenen bir son koşul belirtir.

  • Bu yöntem çağrısı, diğer kodlardan önce bir yöntemin veya özelliğin başında olmalıdır.

  • Bu sözleşme istemcilere sunulur; bu nedenle, yalnızca en az kapsayan yöntem kadar görünür olan üyelere başvurması gerekir.

  • Bu son koşulun çalışma zamanı zorlaması için ikili yeniden yazma aracını (Visual Studio Market'teki Kod Sözleşmeleri'nde kullanılabilir) kullanmanız gerekir.

  • Sabit bir dize değişmez değeri değilse userMessage , sözleşme araçlar tarafından anlaşılamayabilir.

Şunlara uygulanır