Contract Sınıf

Tanım

Önkoşullar, son koşul ve nesne sabit değerleri 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, son koşul ve nesne sabitleri belirtmenize olanak sağlar. Önkoşullar, bir yöntem veya özellik girilirken karşılanması gereken gereksinimlerdir. Son koşullar, yöntem veya özellik kodundan çıkış anındaki beklentileri açıklar. 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 Code Contracts.

Important

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 durumlar oluşturmaz. ccRewrite ikili yazarını Code Contracts adresinden Visual Studio Market'ten indirebilirsiniz. CCRewrite, proje Properties 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'sı ile birlikte gönderilmiyor.

Yöntemler

Name Description
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.

Assert(Boolean)

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

Assume(Boolean, String)

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

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.

EndContractBlock()

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

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)

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

EnsuresOnThrow<TException>(Boolean, String)

Koşul, sağlanan özel duruma 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.

EnsuresOnThrow<TException>(Boolean)

Sağlanan özel duruma ve koşula göre kapsayan yöntem veya özellik için bir son koşul sözleşmesi 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 koleksiyonundaki 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, 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.

Invariant(Boolean)

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

OldValue<T>(T)

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

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(Boolean)

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

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.

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.

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

Name Description
ContractFailed

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

Şunlara uygulanır