MvcOptions.MaxModelBindingCollectionSize Özellik

Tanım

Bağlamayı modellemek için karmaşık bir koleksiyonun en büyük boyutunu alır veya ayarlar. Bu sınıra ulaşıldı mı, model bağlama sistemi bir InvalidOperationException atar.

public:
 property int MaxModelBindingCollectionSize { int get(); void set(int value); };
public int MaxModelBindingCollectionSize { get; set; }
member this.MaxModelBindingCollectionSize : int with get, set
Public Property MaxModelBindingCollectionSize As Integer

Özellik Değeri

Int32

Varsayılan değer, ile eşleşen 1024'tir. DefaultValueCountLimit

Açıklamalar

Bir koleksiyonu bağlarken bazı öğe bağlayıcıları koşulsuz olarak başarılı olabilir ve model bağlaması bellek yetersiz olabilir. Bu sınır, bu tür sınırsız koleksiyon büyümesini kısıtlar; Yanlış model bağlayıcılarına ve modellerine karşı koruma sağlar.

Bu sınır, bağlı modeli düzeltmez. Bunun InvalidOperationException yerine geliştiriciye modellerinde veya model bağlayıcılarında bir sorun olduğunu bildirer. Geliştiricinin bu sorunu düzeltmesi gerekir.

Bu sınır, basit tür koleksiyonları için geçerli değildir. Tamamen CollectionModelBinder<TElement> 'lere IValueProvider bağlı olduğunda, kullanılabilir verilerden daha büyük koleksiyonlar oluşturamaz.

Bu seçenek için çok yüksek bir değer (int. Örneğin MaxValue) sınırı etkili bir şekilde kaldırır ve önerilmez.

Şunlara uygulanır