IActionConstraint Arabirim
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.
Verilen istek için ilişkili bir eylemin geçerli olup olmadığını belirlemek için koşullu mantığı destekler.
public interface class IActionConstraint : Microsoft::AspNetCore::Mvc::ActionConstraints::IActionConstraintMetadata
public interface IActionConstraint : Microsoft.AspNetCore.Mvc.ActionConstraints.IActionConstraintMetadata
type IActionConstraint = interface
interface IActionConstraintMetadata
Public Interface IActionConstraint
Implements IActionConstraintMetadata
- Türetilmiş
- Uygulamalar
Açıklamalar
Eylem kısıtlamaları, kısıtlama uygulanmış bir eylemin, olmayan bir eylemden daha iyi bir eşleşme yapmasının ikincil etkisine sahiptir.
Aynı eylem ve denetleyici adına sahip 'A' ve 'B' olmak üzere iki eylemi göz önünde bulundurun. 'A' eylemi yalnızca HTTP POST yöntemine izin verir (kısıtlama yoluyla) ve 'B' eyleminin kısıtlaması yoktur.
Gelen istek bir POST ise, hem eşleştiği hem de kısıtlaması olduğu için 'A' en iyi eşleşme olarak kabul edilir. Gelen istek başka bir fiil kullanıyorsa, kısıtlaması nedeniyle 'A' seçim için geçerli olmaz, bu nedenle en iyi eşleşme 'B' olur.
Eylem kısıtlamaları da sipariş değerlerine göre gruplandırılır. Aynı grup değerine sahip tüm kısıtlamalar aynı uygulama ilkesinin parçası olarak kabul edilir ve aynı aşamada yürütülür.
Aşamalar değerine Ordergöre artan düzende çalışır. Seçim adayı olan bir eylem kümesi verildiğinde, çalıştırılacak bir sonraki aşama, herhangi bir adayın son aşamanın sırasına göre daha büyük olan herhangi bir kısıtlama için en düşük değeridir Order .
Aşama sırası tanımlandıktan sonra, her eylemin bu aşamadaki tüm kısıtlamaları yürütülür. Herhangi bir kısıtlama eşleşmiyorsa, bu eylem seçim adayı değildir. Geçerli durumda kısıtlamaları olan eylemler hala adaysa, bunlar 'en iyi' eylemlerdir ve bu işlem 'en iyi' eylemler kümesinde bir sonraki aşamayla tekrarlanır. 'En iyi' eylemlerin sonraki aşamalarını işledikten sonra hiçbir aday kalmazsa, bu süreç bu aşamadaki 'diğer' aday eylemleri (kısıtlaması olmayanlar) kümesinde yinelenir.
Özellikler
Order |
Kısıtlama sırası. |
Yöntemler
Accept(ActionConstraintContext) |
Eylemin seçim için geçerli bir aday olup olmadığını belirler. |