-->

Authentication với ASP.NET Core Identity #2 Hướng dẫn tạo Area

Khi một website ASP.NET Core trở nên quá lớn quá và phức tạp, số Controller chắc chắn sẽ tăng lên, với nhiều controller như vậy bạn sẽ thấy chúng có thể thuộc về một nhóm như phần Administrator, phần sản phẩm, phần nhóm sản phẩm…

Trong ASP.NET có giới thiệu một khái niệm là Area. Areas cho phép bạn chia các Controllers, models và views tới các vị trí khác nhau trong solution với cùng một thư mục độc lập. 


Trong series này, nó ứng dụng trong việc sẽ giúp bạn trong việc chia hai giao diện, với tài khoản Admin chẳng hạn, mới chỉ được phép vào trang quản lý admin. Ok, mình bắt đầu nhé.

Hướng dẫn tạo Area

Bước 1. Trong IdentityAuth.WebApp tạo folder tên là Areas.

Bước 2. Nhấp phải vào Areas → Add → Area...

Bước 3. Chọn MVC Area, đặt tên là Admin:

Bước 4. Copy folder Shared và 2 file _ViewImports.cshtml_ViewStart.cshtmldán vào Views của Areas. Cụ thể như hình dưới:

Bước 5. Vào Startup.cs và thêm route cho areas, với code và như hình dưới:


endpoints.MapControllerRoute(
                   name: "area",
                   pattern: "{area=Areas}/{controller=Home}/{action=Index}/{id?}");

Bước 6. Kết quả

Lời kết

Việc phân chia này ứng dụng rất nhiều cho sau này nên bạn hãy nắm thật kĩ, sau này sẽ có vài câu hỏi là, tại sao các view trong area không chạy được? hay là sao trong view của area không có file Layout chẳng hạn? Nên việc làm và triển khai này cũng góp phần nhiều cho bạn giải quyết các vấn đề trên.

Mong bài viết hữu ích với các bạn, và trong bài sau chúng ta sẽ tiến hành tạo chức năng đăng ký tài khoản nhé. 

By Hiếu Quốc.

Có lẽ bạn thích?

1 comment

  1. Chuột phải lên project xong chọn Add New Scaffolded Item cho nhanh :)

    ReplyDelete

Post a Comment