Aracılığıyla paylaş


Contract Sınıf

Tanım

Önkoşullar, son koşul ve nesne sabitleri gibi program sözleşmelerini temsil etmeye yönelik 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, son koşul ve nesne sabitleri belirtmenize olanak sağlar. Önkoşullar, bir yöntem veya özellik girilirken karşılanması gereken gereksinimlerdir. Son koşullarda, yöntem veya özellik kodunun çıkış zamanındaki 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 yazan 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 yazma 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)

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

Assert(Boolean, String)

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 truevarsaymalarını sağlar.

Assume(Boolean, String)

Kod çözümleme araçlarına, her zaman trueolduğu statik olarak kanıtlanamasa bile bir koşulun olduğunu truevarsayar 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 falseise görüntülenecek bir ileti belirtir.

EnsuresOnThrow<TException>(Boolean)

Sağlanan özel durum ve koşula göre kapsayan yöntem veya özellik için bir son koşul sözleşmesi belirtir.

EnsuresOnThrow<TException>(Boolean, String)

Koşul, sağlanan özel durum ve koşula göre kapsayan false 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 true 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>)

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şında oldukları gibi değerleri temsil eder.

Requires(Boolean)

Kapsayan yöntem veya özellik için ön koşul sözleşmesini belirtir.

Requires(Boolean, String)

Kapsayan yöntem veya özellik için bir ön koş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 ön koş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 ön koş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