ASP.NET - MVC - Truy cập mô hình dữ liệu

Truy cập mô hình dữ liệu từ Controller

Trong bài này, bạn sẽ tạo một lớp BookController mới và viết code để lấy dữ liệu từ bảng Boook trong cơ sở dữ liệu và hiển thị ra trình duyệt sử dụng một bản mẫu xem (view template).

Bước 1: Để tạo 1 Controller mới, ở Solution Explorer, chuột phải chọn thư mục Controllers, và nhấn Add, sau đó chọn Controller.

Bước 2: Ở hộp thoại Add Scaffold, chọn mục MVC 5 Controller with views (điều khiển MVC 5 với các view), sử dụng Entity Framework và nhấn Add.

Bước 3: Chọn Model class là Book (BookStoreManager.Models) cho lớp Book.cs và chọn BookStoreEntity(BookStoreManager.Models) cho lớp bối cảnh Data. Để sinh Views tự độnc chúng ta chọn Generate View, check vào Reference script libraries để chèn thực thư viện javascript vào các view , check vào Use a Layout page để sử dụng layout. Tiếp theo, nhấn Add, Visual Studio sẽ tạo các tập tin và thư mục. Bạn có thể dùng Layout mặc định nếu muốn (~/Views/Shared/_Layout.cshtml).

Sau đó, hãy đợi một chút, Visual Studio sẽ tự động tạo mã nguồn tập tin BookController.cs trong thư mục Controllers và tạo thư mục Views/Book chứa các tập tin Create.cshtml, Delete.cshtml, Details.cshtml, Edit.cshtml, và Index.cshtml. Bạn có thể bật cửa sổ Solution Explorer (Ctrl + Alt + L) để xem tổng quan các tập tin mới tạo.

Visual Studio sẽ tự động tạo các phương thức CRUD (create, read, update, và delete) và kèm theo giao diện (views) vì vậy với ASP.NET MVC, bạn có thể thực hiện làm giao diện trang Admin rất nhanh.

Cấu hình lại RouteConfig.cs trong thư mục App_Start:

Sau khi tạo xong BookController, bạn chạy dự án web với đường dẫn http://localhost:xxxx/Book/ để mở giao diện quản lý bảng Book mặc định.


Bài viết đã hướng dẫn bạn cách tạo một Controller và các Views để thực hiện các thao tác xem, xóa, sửa, cập nhật tương ứng với 1 bảng trong cơ sở dữ liệu. Tất cả các bước này đều do Visual Studio gieo mã nguồn cho bạn, rất tiện phải không nào. Việc cần làm là bạn cần tìm hiểu rõ cấu trúc các tập tin này. Do đó, trong bài tiếp theo để có thể hiểu rõ hơn về ASP.NET MVC.