Contract Sınıf

Tanım

Ön koşul, son koşul ve nesne sabitleri gibi program sözleşmelerini temsil etmek için statik yöntemler içerir.

public ref class Contract abstract sealed
public static class Contract
type Contract = class
Public Class Contract
Devralma
Contract

Açıklamalar

Kod sözleşmesi sınıfları, kodunuzda önkoşulları, sonkoşulları ve nesne sabitlerini belirtmenize olanak sağlar. Önkoşullar, bir yöntem veya özellik girilirken karşılanması gereken gereksinimlerdir. Son koşullarda yöntem veya özellik kodundan çıkıldığı sırada beklentiler açıklanır. Nesne sabitleri, koşul sorunu olmayan bir sınıf için beklenen durumu açıklar. Önkoşullar, son koşul ve nesne sabitleri hakkında daha fazla bilgi için bkz. Kod Sözleşmeleri.

Kod sözleşmelerini kullanmaya yönelik araçlar ve ayrıntılı yönergeler için bkz. Visual Studio Market'te Kod Sözleşmeleri .

Önemli

Sözleşmelerin çalışma zamanı zorlamasını eklemek için ikili bir yeniden yazma kullanmanız gerekir. Aksi takdirde, yöntemi gibi Contract.Ensures sözleşmeler yalnızca statik olarak test edilebilir ve bir sözleşme ihlal edilirse çalışma zamanında özel durum oluşturmaz. İkili yeniden yazan CCRewrite dosyasını Visual Studio Market'te Kod Sözleşmeleri'nden indirebilirsiniz. CCRewrite, proje Özellikleri sayfasından çalışma zamanı sözleşme zorlamasını etkinleştirmenizi sağlayan bir Visual Studio eklentisiyle birlikte gelir. İkili yeniden yazma ve Visual Studio eklentisi Visual Studio 2010 veya Windows SDK ile birlikte gösterilmez.

Yöntemler

Assert(Boolean)

Bir koşulu denetler; koşul ise false, çözümleyici için ayarlanan yükseltme ilkesini izler.

Assert(Boolean, String)

Bir koşulu denetler; koşul ise false, çözümleyici tarafından ayarlanan yükseltme ilkesini izler ve belirtilen iletiyi görüntüler.

Assume(Boolean)

Kod çözümleme araçlarına, statik olarak her zaman trueolduğu kanıtlanamasa bile belirtilen koşulun olduğunu truevarsayar.

Assume(Boolean, String)

Kod çözümleme araçlarına, bir koşulun truestatik olarak her zaman trueolduğu kanıtlanamasa bile olduğunu varsayar ve varsayım başarısız olursa bir ileti görüntüler.

EndContractBlock()

Bir yöntemin sözleşmeleri formda yalnızca önkoşullar içerdiğinde if--thenthrow sözleşme bölümünün sonunu işaretler.

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 ise falsegörüntülenecek bir ileti belirtir.

EnsuresOnThrow<TException>(Boolean)

Sağlanan özel duruma ve koşula bağlı olarak, kapsayan yöntem veya özellik için bir önkoşul sözleşmesi belirtir.

EnsuresOnThrow<TException>(Boolean, String)

Koşul, sağlanan özel durum ve koşula false göre kapsayan yöntem veya özellik içinse görüntülenecek bir son koşul sözleşmesi ve bir ileti belirtir.

Exists(Int32, Int32, Predicate<Int32>)

Belirtilen testin bir tamsayı aralığındaki herhangi bir tamsayı için doğru olup olmadığını belirler.

Exists<T>(IEnumerable<T>, Predicate<T>)

Bir öğe koleksiyonu içindeki bir öğenin bir işlev içinde var olup olmadığını belirler.

ForAll(Int32, Int32, Predicate<Int32>)

Belirli bir koşulun belirtilen aralıktaki tüm tamsayılar için geçerli olup olmadığını belirler.

ForAll<T>(IEnumerable<T>, Predicate<T>)

Bir koleksiyondaki tüm öğelerin bir işlev içinde bulunup bulunmadığını belirler.

Invariant(Boolean)

Kapsayan yöntem veya özellik için sabit bir sözleşme belirtir.

Invariant(Boolean, String)

Kapsayan yöntem veya özellik için sabit bir sözleşme belirtir ve sözleşme koşulu başarısız olursa bir ileti görüntüler.

OldValue<T>(T)

Bir yöntemin veya özelliğin başındaki değerleri temsil eder.

Requires(Boolean)

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

Requires(Boolean, String)

Kapsayan yöntem veya özellik için bir önkoşul sözleşmesi belirtir ve sözleşme koşulu başarısız olursa bir ileti görüntüler.

Requires<TException>(Boolean)

Kapsayan yöntem veya özellik için bir önkoşul sözleşmesi belirtir ve sözleşme koşulu başarısız olursa bir özel durum oluşturur.

Requires<TException>(Boolean, String)

Kapsayan yöntem veya özellik için bir önkoşul sözleşmesi belirtir ve sözleşme koşulu başarısız olursa sağlanan iletiyle bir özel durum oluşturur.

Result<T>()

Bir yöntemin veya özelliğin dönüş değerini temsil eder.

ValueAtReturn<T>(T)

Bir yöntemden dönerken parametrenin out son (çıkış) değerini temsil eder.

Ekinlikler

ContractFailed

Sözleşme başarısız olduğunda gerçekleşir.

Şunlara uygulanır