Bài 7 – Bổ sung chức năng tìm kiếm

Bài 6 – Add a new field and update database

Bài 5 – SQL Server LocalDB

Bài 4 – Add a model

Bài 3 – Add a view

Bài 2 – Add Controllers

Bài 1 – Tạo dự án mới ASP.NET Core MVC 1.1

Bài này hướng dẫn bổ sung chức năng tìm kiếm cho form Index.cshtml

  • Thay đổi trong trang Index.cshtml, bổ sung form tìm kiếm

<p>
<a asp-action=”Create”>Create New</a>
</p>

5

  • Mở MoviesController.cs và thay đổi đoạn mã sau trong Index method

6

  • Nhấn Ctrl+F5 để chạy và kiểm tra kết quả như  màn hình sau

7

Bài 2 – Add Controllers

Bài 1 – Tạo dự án mới ASP.NET Core MVC 1.1

Kiến trúc (mẫu) Model-View-Controller (MVC) cho phép thiết kế ứng dụng thành 3 thành phần chính: Model, View, Controller. Kiến trúc MVC cho phép chúng ta dễ dàng kiểm thử và cập nhật ứng dụng hơn so với lập trình truyền thống (vì tách ứng dụng ra thành các modules: Model, View, Controller riêng).

  • Models: đảm trách phần dữ liệu của ứng dụng, các thiết lập ràng buộc, truy cập dữ liệu của ứng dụng thực hiện qua thành phần này
  • Views: thành phần đảm trách giao diện của ứng dụng, thông thường hiển thị dữ liệu từ model hoặc cho phép người dùng tương tác với hệ thống.
  • Controllers: điều khiển các yêu cầu từ người dùng (trình duyệt) . Controllers đọc dữ liệu từ model và gọi view để hiển thị dữ liệu cho người dùng.

Bài này hướng dẫn tạo Controllers trong ASP.NET Core MVC 1.1, các bước chi tiết như dưới đây:

  • Right-click Controllers > Add > New Item
  • Chọn MVC Controller Class

ac[1]

  • Controller được tạo ra như sau

2

  • Mỗi phương thức public(ActionMethod) trong controller là một Http Endpoint
  • Ví dụ, chúng ta gọi phương thức Index và phương thức Welcome theo đường dẫn như sau
  • MVC gọi các controller classes và các phương thức trong controller dựa trên URL của request. Cấu trúc logic của URL được sử dụng bởi MVC theo định dạng dưới đây để xác định phương thức nào được gọi:

    /[Controller]/[ActionName]/[Parameters]

    Thiết lập này được chỉ ra trong file Startup.cs

app.UseMvc(routes =>
{
    routes.MapRoute(
        name: "default",
        template: "{controller=Home}/{action=Index}/{id?}");
});