Contract Sınıf
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
Ö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 |
| Assert(Boolean) |
Bir koşulu denetler; koşul ise |
| Assume(Boolean, String) |
Kod çözümleme araçlarına, statik olarak her zaman |
| Assume(Boolean) |
Kod çözümleme araçlarına, statik olarak her zaman |
| EndContractBlock() |
Bir yöntemin sözleşmeleri formda yalnızca önkoşullar içerdiğinde |
| Ensures(Boolean, String) |
Sağlanan çıkış koşulu için bir son koşul sözleşmesi ve koşul |
| 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 |
| 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 |
Ekinlikler
| Name | Description |
|---|---|
| ContractFailed |
Bir sözleşme başarısız olduğunda gerçekleşir. |