238
Chương 7: ASP.NET và Web Form
ASP.NET cung cấp nhiều cách để lưu trữ thông tin, hay trạng thái, giữa các yêu cầu (request).
Kiểu trạng thái mà bạn sử dụng cho biết: thông tin sẽ sống bao lâu, sẽ được lưu trữ ở đâu, và
sẽ được bảo mật như thế nào. Bảng 7.1 liệt kê những tùy chọn trạng thái khác nhau được cấp
bởi ASP.NET. Bảng này không chứa đối tượng
Cache
, đối tượng này cung cấp kho lưu trữ tạm
thời và sẽ được mô tả trong mục 7.5.
Cú pháp cho các phương pháp lưu trữ dữ liệu là như nhau. Dữ liệu được lưu trữ trong một đối
tượng tập hợp và được đánh chỉ mục bằng một tên chuỗi.
Bảng 7.1 Các kiểu quản lý trạng thái
Kiểu
trạng thái
Dữ liệu
được phép
Vị trí lưu trữ
Thời gian sống
Bảo mật
View state
Tất cả các
kiểu dữ liệu
khả-tuần-
tự-hóa
.NET.
Một trường ẩn
trong trang web
hiện hành.
Bị mất khi người
dùng chuyển sang
một trang khác.
Mặc định là không
an toàn. Tuy nhiên,
bạn có thể sử dụng
các chỉ thị trang để
thực hiện mật hóa
và băm để ngăn dữ
liệu bị phá.
Query
string
Dữ liệu
chuỗi.
Chuỗi URL của
trình duyệt.
Bị mất khi người
dùng nhập một URL
mới hoặc đóng trình
duyệt. Tuy nhiên, nó
có thể được lưu trữ
trong một
bookmark.
Người dùng có thể
nhìn thấy được và
chỉnh sửa dễ dàng.
Session
state
Tất cả các
kiểu dữ liệu
khả-tuần-
tự-hóa
.NET.
Bộ nhớ server
(có thể được cấu
hình cho một
tiến trình hoặc
cơ sở dữ liệu
bên ngoài).
Hết hiệu lực sau một
khoảng thời gian
được định nghĩa
trước (thường là 20
phút, nhưng khoảng
thời gian này có thể
thay đổi được).
An toàn vì dữ liệu
không bao giờ được
chuyển cho client.
Cookie
Dữ liệu
chuỗi.
Máy tính client
(trong bộ nhớ
hoặc một file
text, tùy thuộc
vào các thiết lập
cho thời gian
sống của nó).
Được thiết lập bởi
lập trình viên. Có
thể được sử dụng
trong nhiều trang và
có thể vẫn còn giữa
các lần viếng thăm.
Không an toàn, và
có thể bị người
dùng chỉnh sửa.