Học lập trình Asp.Net MVC 5.0 - View trong Asp.Net MVC - Visual Studio 2015 - Phần 2 - Bài số 3

Học lập trình Asp.Net MVC 5.0 - View trong Asp.Net MVC - Visual Studio 2015 - Phần 2 - Bài số 3
access_time 12/5/2015 12:00:00 AM
person Nguyễn Mạnh Hùng
1. Giới thiệu Truyền dữ liệu từ Controller đến View
Trong ứng dụng Asp.Net MVC,  Controller thường xử lý các vấn đề liên quan tới nghiệp vụ của ứng dụng và trả về kết quả cho người sử dụng thông qua View. Tuy nhiên trong một số trường hợp, lập trình trình viên cần truyền dữ liệu trực tiếp từ Controller đến View. Để thực hiện vấn đề này, Asp.Net MVC hỗ trợ các đối tượng : 2. ViewData
Lập trình viên có thể sử dụng đối tượng ViewData để truyền dữ liệu từ Controller đến View, đối tượng ViewData có kiểu từ điển và được dẫn xuất từ lớp ViewDataDictionary, đối tượng ViewData chứa cặp giá trị <key,value>, sử dụng key để truy vấn tới value của đối tượng này.
Một số các thuộc tính của ViewData Cú pháp sau mô tả quá trình thiết lập thông tin cho đối tượng ViewData
Cú pháp ViewData[<key>] = <Value>;
Mô tả Ví dụ 1 : Minh họa sử dụng đối tượng ViewData lưu trữ dữ liệu có kiểu dữ liệu cơ bản :
Để thực hiện ví dụ, chúng ta tạo ứng dụng Empty Asp.Net MVC, sau đó tạo HomeController. Trong phương thức Index trực thuộc Controller sử dụng 2 đối tượng ViewData lưu thông tin Message và Datetime, sau đó hiển thị dữ liệu của 2 đối tượng này tại View.
Để thực hiện, chúng ta cần thực hiện qua các bước sau :
Hình số 1 : Sử dụng đối tượng ViewData
  
Hình số 2 : Truy vấn đối tượng ViewData
Hình số 3 : Kết quả truy vấn đối tượng ViewData
Ví dụ 2 : Minh họa sử dụng đối tượng ViewData lưu trữ dữ liệu có kiểu dữ liệu phức tạp, để mô tả ví dụ, chúng ta sử dụng lại ứng dụng Asp.Net MVC tại Ví dụ 1, sau đó chúng ta bổ sung thêm các thông tin theo các bước sau :
Hình số 4 : Tạo class Student trực thuộc Model
Hình số 5 : Tạo đối tượng ViewData lưu thông tin Danh sách Student
Hình số 6 : Truy vấn ViewData tại View
Hình số 7 : Kết quả chạy chương trình
3. ViewBag
Đối tượng ViewBag có kiểu dynamic, kiểu dữ liệu động, giống như ViewData, đối tượng này để truyền dữ liệu từ Controller sang View, ViewBag chỉ tồn tại ứng với Request hiện tại và trả về giá trị null khi chuyển sang Request khác. Ngoài ra do ViewBag có kiểu dynamic do vậy với các kiểu dữ liệu phức tạp không cần chuyển kiểu như ViewData và TempData.
Cú pháp sau mô tả quá trình thiết lập thông tin cho ViewBag
Cú pháp ViewBag.<PropertyName> = <Value>;
Mô tả Ví dụ :
Minh họa việc sử dụng đối tượng ViewBag lưu trữ thông tin với  kiểu dữ liệu đơn giản. Tạo ContactControl trong ứng dụng Asp.Net MVC, sau đó trong phương thức Index trực thuộc Controller, chúng ta sử dụng ViewBag lưu thông tin Message và Datetime vào thuộc tính của ViewBag, hiển thị dữ liệu của 2 đối tượng này tại View.
Để thực hiện, chúng ta cần thực hiện qua các bước sau :
Hình số 8 : Tạo 2 thuộc tính của ViewBag
  
Hình số 9 : Truy vấn thuộc tính của ViewBag
Hình số 10 : Kết quả truy vấn thuộc tính của ViewBag

vertical_align_top
share
Chat...