What's ViewState? How does use?

ViewState là gi?

ViewState là một đặc tính có sẵn của ASP.NET. Nó được lưu ở client trong một hidden field có tên là "__VIEWSTATE". Nó cho phép bạn lưu data giữa các lần postback trên cùng một page.

ViewState dựa vào dictionary collection. Tức là có key và value. Muốn lấy value thì ta dùng key.

ViewState["Count"] = 1;

int count;
if (ViewState["Count"] != null)
count = (int)ViewState["Count"];

Trên đây là một ví dụ đơn giản về cách dùng ViewState. Bạn có thể lưu vào một Object của bạn tạo ra với điều kiện bạn thêm vào một attribute như sau.

[Serializable]
public class Customer
{
public string FirstName;
public string LastName;
public Customer(string firstName, string lastName)
{
FirstName = firstName;
LastName = lastName;
}
}

//Khi gán vào ViewState.
Customer cust = new Customer("Marsala", "Simons");
ViewState["CurrentCustomer"] = cust;

//Khi lây ra.
Customer cust;
cust = (Customer)ViewState["CurrentCustomer"];

*Chu y* Với class do bạn tạo ra cần phải có attribute Serializable thì mới có thể gán vào ViewState được.

Security ViewState.

ViewState được mã hóa ở client. Nhiều người nghĩ là đã được an toàn - có cả tui trong đó - nhưng không, với một Hacker có tay nghề thì không gì là an toàn.

Tổng kết:

* ViewState là thuộc tính có sẵn của asp.net
* Được lưu giữ ở Client
* Có thể để dữ liệu vào trong ViewState.
* Security không an toàn. => không được để dữ liệu nhậy cảm trong ViewState.


Comments

Anonymous said…
doc xong ko hieu j het

Popular posts from this blog

How to search and HighLight !