Αυτό το άρθρο είναι ένα άρθρο καθρέφτη της αυτόματης μετάφρασης, κάντε κλικ εδώ για να μεταβείτε στο αρχικό άρθρο.

Άποψη: 20928|Απάντηση: 3

[ASP.NET] mvc προσαρμοσμένο φίλτρο κλάση ActionFilterAttribute

[Αντιγραφή συνδέσμου]
Δημοσιεύτηκε στις 6/1/2016 3:32:33 μ.μ. | | |

Σε περίπτωση που τα φίλτρα που παρουσιάστηκαν νωρίτερα δεν πληρούν τις απαιτήσεις, αυτό το προσαρμοσμένο φίλτρο θα σας φανεί χρήσιμο εάν θέλετε να ορίσετε τη δική σας λογική επεξεργασίας πριν και μετά την εκτέλεση και την επιστροφή της μεθόδου συμπεριφοράς. Για να προσαρμόσετε ένα φίλτρο, κληρονομείτε την κλάση ActionFilterAttribute, η οποία είναι μια αφηρημένη κλάση που υλοποιεί τις διεπαφές IActionFilter και IResultFilter, κυρίως ξαναγράφοντας τις τέσσερις εικονικές μεθόδους για την επίτευξη λογικής έγχυσης πριν και μετά την εκτέλεση και την επιστροφή της μεθόδου συμπεριφοράς

μέθοδος
παράμετρος
περιγραφή
OnActionΕκτέλεση
ActionExecutingContext
Εκτέλεση πριν από την εκτέλεση της μεθόδου συμπεριφοράς
OnActionExecuted
ActionExecutedContext
Εκτέλεση μετά την εκτέλεση της μεθόδου συμπεριφοράς
OnResultExecution
ResultExecutingContext
Εκτέλεση πριν επιστρέψει η μέθοδος συμπεριφοράς
OnResultExecuted
ResultExecutedContext
Εκτέλεση μετά την επιστροφή της μεθόδου συμπεριφοράς

Οι τέσσερις μέθοδοι εκτελούνται με τη σειρά OnActionExecuting>OnActionExecuted>OnResultExecuting>OnResultExecuted. Τα ορίσματα των παραπάνω τεσσάρων μεθόδων κληρονομούνται από την κλάση ContollorContext. Για παράδειγμα, ένα προσαρμοσμένο φίλτρο ορίζεται παρακάτω



Οι μέθοδοι συμπεριφοράς για τη χρήση του ορίζονται παρακάτω








Προηγούμενος:Η Linode, ένας γνωστός πάροχος υπηρεσιών φιλοξενίας, είναι ύποπτος για παραβίαση και οι χρήστες πρέπει να αλλάξουν τους κωδικούς πρόσβασής τους το συντομότερο δυνατό
Επόμενος:Το Memcache εξετάζει όλες τις βασικές μεθόδους που αναφέρονται
 Σπιτονοικοκύρης| Δημοσιεύτηκε στις 25/10/2016 10:00:36 π.μ. |
 Σπιτονοικοκύρης| Δημοσιεύτηκε στις 10/8/2019 10:16:41 μ.μ. |
Σειρά εκτέλεσης φίλτρου .NET MVC:

IAuthorizationFilter(OnAuthorization)----->IActionFilter(OnActionExecuting)---->

Controller Action()---->IActionFilter(OnActionExecuted) ---->IResultFilter(OnResultExecuting) ---->

view()---->IResultFilter(OnResultExecuted)

Επιπλέον, η ίδια σειρά εκτέλεσης φίλτρου: από πάνω προς τα κάτω, αρχή εγγύτητας:




Φίλτρο2=>Φίλτρο1
Δημοσιεύτηκε στις 26/8/2019 1:24:19 μ.μ. |
Mark, έμαθε
Αποκήρυξη:
Όλο το λογισμικό, το υλικό προγραμματισμού ή τα άρθρα που δημοσιεύονται από το Code Farmer Network προορίζονται μόνο για μαθησιακούς και ερευνητικούς σκοπούς. Το παραπάνω περιεχόμενο δεν θα χρησιμοποιηθεί για εμπορικούς ή παράνομους σκοπούς, άλλως οι χρήστες θα υποστούν όλες τις συνέπειες. Οι πληροφορίες σε αυτόν τον ιστότοπο προέρχονται από το Διαδίκτυο και οι διαφορές πνευματικών δικαιωμάτων δεν έχουν καμία σχέση με αυτόν τον ιστότοπο. Πρέπει να διαγράψετε εντελώς το παραπάνω περιεχόμενο από τον υπολογιστή σας εντός 24 ωρών από τη λήψη. Εάν σας αρέσει το πρόγραμμα, υποστηρίξτε γνήσιο λογισμικό, αγοράστε εγγραφή και λάβετε καλύτερες γνήσιες υπηρεσίες. Εάν υπάρχει οποιαδήποτε παραβίαση, επικοινωνήστε μαζί μας μέσω email.

Mail To:help@itsvse.com