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

Άποψη: 19573|Απάντηση: 0

[ASP.NET] asp.net Επεξηγηματική έννοια του HttpContext

[Αντιγραφή συνδέσμου]
Δημοσιεύτηκε στις 13/3/2018 9:28:21 μ.μ. | | |
Τι σημαίνει η λέξη HttpContext στο .ashx; Ας σας το συζητήσουμε

Κλάση HttpContext: Ενσωματώνει όλες τις πληροφορίες που σχετίζονται με το HTTP σχετικά με μεμονωμένα αιτήματα HTTP.

Σε κάθε στάδιο της αλυσίδας εκτέλεσης αιτήματος επεξεργασίας, υπάρχει ένα αντικείμενο που περνά ανάμεσα σε κάθε αντικείμενο, δηλαδή αποθηκεύονται οι πληροφορίες περιβάλλοντος του αιτήματος, το οποίο είναι το αντικείμενο HttpContext. Το HttpContext ενσωματώνει όλες τις πληροφορίες ASP.NET ένα μόνο αίτημα προς επεξεργασία. Όταν δημιουργηθεί ο μηχανισμός χειρισμού αιτημάτων, η κλάση HttpContext δημιουργείται με ένα αντικείμενο HttpRuntime, το οποίο στη συνέχεια περνά από διάφορα στάδια της διάρκειας ζωής του αιτήματος


Εισαγωγή στο HttpContext: Διατηρήστε δεδομένα για έναν μόνο χρήστη, ένα μόνο αίτημα και τα δεδομένα διατηρούνται μόνο για τη διάρκεια αυτού του αιτήματος. παρέχεται για τη διατήρηση των τιμών που πρέπει να μεταβιβαστούν μεταξύ διαφορετικών HttpModules και HttpHandlers. Μπορεί επίσης να χρησιμοποιηθεί για τη διατήρηση των κατάλληλων πληροφοριών για ένα πλήρες αίτημα.

Η ιδιότητα Current είναι ένα χρήσιμο στατικό μέλος που επιστρέφει το αντικείμενο HttpContex που ζητήθηκε αυτήν τη στιγμή. Τα στοιχεία είναι πίνακες κατακερματισμού που μοιράζονται δεδομένα μεταξύ των λειτουργικών μονάδων και των χειριστών που εμπλέκονται στην επεξεργασία αιτημάτων. Κάθε προσαρμοσμένη λειτουργική μονάδα ή δείκτης χειρισμού μπορεί να προσθέσει τις δικές της πληροφορίες στο ζητούμενο αντικείμενο HttpContext και οι πληροφορίες που είναι αποθηκευμένες στα Στοιχεία χρησιμοποιούνται τελικά από τη σελίδα, αλλά αυτές οι πληροφορίες μπορούν να προσπελαστούν μόνο κατά την εκτέλεση της αίτησης
Πλαίσιο Http
Ορισμός: Ενσωματώνει όλες τις πληροφορίες που σχετίζονται με το HTTP σχετικά με μεμονωμένα αιτήματα HTTP.

Στην πραγματικότητα, το αίτημα Http και όλες οι πληροφορίες που επιστρέφονται βρίσκονται σε αυτό.

Το HttpContext προέρχεται από το System.Runtime.Remoting.Messaging.CallContext.HostContext. Αυτός ο ορισμός του HostContext είναι να λάβετε ή να ορίσετε το περιβάλλον κεντρικού υπολογιστή που σχετίζεται με το τρέχον νήμα (έτσι το HttpContext μπορεί να χρησιμοποιηθεί μόνο στο νήμα του τρέχοντος αιτήματος. )



Το HttpContext είναι στην πραγματικότητα αποθηκευμένο στην ιδιότητα CallContext.HostContextΕάν εξακολουθείτε να είστε περίεργοι για το HostContext, μπορείτε να το δείτε μόνοι σας με Reflector.exe, δεν θέλω να δημοσιεύσω άλλο κώδικα, επειδή ορισμένοι τύποι και μέθοδοι δεν είναι δημόσιοι.




Το HttpContext.Current.Items μπορεί να χρησιμοποιηθεί κατά την κοινή χρήση δεδομένων μεταξύ HttpModule και HTTPHandler, επειδή κάθε αίτημα χρήστη περνά από τη διοχέτευση χρόνου εκτέλεσης HTTP HttpModule, HTTPHandler. Όταν εφαρμόζετε τη μέθοδο IHttpMoudle για να μεταβιβάσετε πληροφορίες στο αίτημα χρήστη μέσω HttpMoudle. Μπορείτε να χρησιμοποιήσετε το HttpContext.Current.Items για να μεταφέρετε δεδομένα σε διαφορετικές σελίδες αιτημάτων και διαφορετικά HttpModules, αλλά μόλις τελειώσει το αίτημα και αναρτηθούν τα δεδομένα, τα δεδομένα σε αυτήν τη συλλογή θα χαθούν από μόνα τους.

Για παράδειγμα, κάθε φορά που κάνουμε ένα αίτημα, θέλουμε να χρησιμοποιήσουμε το ίδιο αντικείμενο περιβάλλοντος DbContext στο ef και ο κώδικας έχει ως εξής:








Προηγούμενος:Προσδιορίστε εάν ο επισκέπτης είναι κινητό τηλέφωνο ή υπολογιστής με βάση το UserAgent
Επόμενος:Asp.Net Παρουσιάστηκε το IHttpHandler
Αποκήρυξη:
Όλο το λογισμικό, το υλικό προγραμματισμού ή τα άρθρα που δημοσιεύονται από το Code Farmer Network προορίζονται μόνο για μαθησιακούς και ερευνητικούς σκοπούς. Το παραπάνω περιεχόμενο δεν θα χρησιμοποιηθεί για εμπορικούς ή παράνομους σκοπούς, άλλως οι χρήστες θα υποστούν όλες τις συνέπειες. Οι πληροφορίες σε αυτόν τον ιστότοπο προέρχονται από το Διαδίκτυο και οι διαφορές πνευματικών δικαιωμάτων δεν έχουν καμία σχέση με αυτόν τον ιστότοπο. Πρέπει να διαγράψετε εντελώς το παραπάνω περιεχόμενο από τον υπολογιστή σας εντός 24 ωρών από τη λήψη. Εάν σας αρέσει το πρόγραμμα, υποστηρίξτε γνήσιο λογισμικό, αγοράστε εγγραφή και λάβετε καλύτερες γνήσιες υπηρεσίες. Εάν υπάρχει οποιαδήποτε παραβίαση, επικοινωνήστε μαζί μας μέσω email.

Mail To:help@itsvse.com