Artikel ini adalah artikel cermin dari terjemahan mesin, silakan klik di sini untuk melompat ke artikel aslinya.

Melihat: 17081|Jawab: 2

[ASP.NET] httpContext.Current.Items (dalam bahasa Inggris)

[Salin tautan]
Diposting pada 11/02/2018 10.42.10 | | | |

HTTP adalah protokol stateless. Setiap permintaan bersifat independen, dan eksekusi serta hasilnya tidak terkait langsung dengan permintaan sebelumnya dan permintaan berikutnya, dan tidak akan terpengaruh langsung oleh respons terhadap permintaan sebelumnya, juga tidak akan secara langsung memengaruhi respons terhadap permintaan berikutnya.

Faktanya, sistem kami sering mendukung pengguna untuk berbagi data (status) yang sama antara browser klien dan server beberapa permintaan, seperti informasi akun login pengguna. Oleh karena itu, ASP.NET menyediakan banyak variabel untuk mengelola status: status aplikasi, status sesi, status tampilan, dll.

Objek HttpContext hanya untuk satu permintaan http.Properti kelas ini juga mencakup objek Permintaan, objek Respons, objek Sesi, dll. Ini adalah koleksi Items dari kelas HttpContext, yang berisi objek tabel hash dalam bentuk key-value.

Pertama, mari kita lihat tujuan HttpContext.Current.Items, yang hanya berfungsi pada satu permintaan pengguna (HttpContext.Current.Items valid untuk satu HTTPRequest). Ketika permintaan ini selesai, koleksi item akan hilang saat informasi server dikirim kembali ke browser. Objek Sesi adalah untuk sesi pengguna, yaitu, ia bertindak pada beberapa permintaan pengguna, dan informasi hilang setelah sesi kedaluwarsa.

Karena HttpContext.Current.Items memiliki siklus hidup yang begitu singkat, dalam keadaan apa ia dapat digunakan? Perlu dicatat di sini bahwa HttpContext.Current.Items dapat digunakan saat berbagi data antara HttpModule dan HTTPHandler, karena setiap permintaan pengguna melewati alur runtime HTTP HttpModule, HTTPHandler. Saat Anda mengimplementasikan metode IHttpMoudle untuk meneruskan informasi ke permintaan pengguna melalui HttpMoudle. Anda dapat menggunakan HttpContext.Current.Items untuk mentransfer data di halaman permintaan yang berbeda dan HttpModules yang berbeda, tetapi setelah permintaan berakhir dan data diposting, data dalam koleksi ini akan hilang dengan sendirinya. Seperti yang ditunjukkan pada gambar berikut:




Selain itu, ketika halaman server melompat (Server.Execute/Server.Transfer), kita dapat menggunakan HttpContext.Current.Items untuk meneruskan data di antara dua formulir.
Jelas, jika Anda mengubah Server.Transfer ke Response.Redirect, Anda tidak akan bisa mendapatkan data di HttpContext.Current.Items di halaman baru karena ini adalah permintaan Http yang berbeda. System.NullReferenceException: Referensi objek tidak diatur ke instans objek.





Mantan:20 menit untuk menerbitkan mata uang virtual berdasarkan jaringan Ethereum
Depan:Memikirkan skenario penggunaan dan signifikansi terminal cerdas
 Tuan tanah| Diposting pada 30/06/2023 20.35.38 |
ASP.NET perbedaan antara ThreadStatic, CallContext, dan HttpContext
https://www.itsvse.com/thread-10620-1-1.html
Sanggahan:
Semua perangkat lunak, materi pemrograman, atau artikel yang diterbitkan oleh Code Farmer Network hanya untuk tujuan pembelajaran dan penelitian; Konten di atas tidak boleh digunakan untuk tujuan komersial atau ilegal, jika tidak, pengguna akan menanggung semua konsekuensi. Informasi di situs ini berasal dari Internet, dan sengketa hak cipta tidak ada hubungannya dengan situs ini. Anda harus sepenuhnya menghapus konten di atas dari komputer Anda dalam waktu 24 jam setelah pengunduhan. Jika Anda menyukai program ini, harap dukung perangkat lunak asli, pembelian pendaftaran, dan dapatkan layanan asli yang lebih baik. Jika ada pelanggaran, silakan hubungi kami melalui email.

Mail To:help@itsvse.com