Lập trình ASP.NET MVC – Bài 3: Cách tạo vùng Admin bằng Area | Create area for admin | TEDU



Lập trình ASP.NET MVC – Bài 3: Cách tạo vùng Admin bằng Area | Create area for admin | TEDU

Mã nguồn bài học Onlineshop:
Mã nguồn CMS ASP.NET MVC:
Trong bài này chúng ta sẽ tìm hiểu cách tạo vùng Admin cho trang web bằng cách sử dụng tính năng Area trong ASP.NET MVC.
Ứng dụng thực tiễn dùng để tạo ra phần quản trị cho website có layout riêng. Ngoài ra chúng ta cũng có thể tạo nhiều vùng trong ứng dụng theo yêu cầu của từng dự án thực tế.

hãy sửa thêm thuộc tính namespace vào để phân biệt 2 controller cùng tên ở bên trong và bên ngoài nhé:
routes.MapRoute(
name: “Default”,
url: “{controller}/{action}/{id}”,
defaults: new { controller = “Home”, action = “Index”, id = UrlParameter.Optional },
namespaces: new string[] { “WebApp.Controllers” }
);

Trong namespace mình đưa ra cái namespace của controller bên ngoài, như thế nó sẽ hiểu, thứ nữa là bạn phải khai báo namespace cho tất các các dòng khác

▶ More information about TEDU:
Website:
Hotline: 0966 036 626
Email: tedu.international@gmail.com

▶ CLICK TO SUBSCRIBE:
#tedu #aspnetmvc

DO NOT REUPLOAD

Nguồn: https://themusicobserver.com/

Xem thêm bài viết khác: https://themusicobserver.com/am-thuc/

  • Em yêu anh. .ahihi

    Xelurinrin July 17, 2020 6:48 am Reply
  • Ae ai sử dụng visua 2019 mà không có mục Areas thì tạo trước thư mục Areas rồi nhấn chuột phải chọn add->Areas.

    Natri Wit July 17, 2020 6:48 am Reply
  • Visual studio 2019 lại không có phần add area nhỉ

    Trần Việt Thắng July 17, 2020 6:48 am Reply
  • cho em hỏi ngoài lề. Em add ko đc các reference , tại sao vậy anh. các reference nó để dấu chấm thang qua bên ngoài

    nguyen khoi July 17, 2020 6:48 am Reply
  • Hay !

    Hiển Lê Phan Vinh July 17, 2020 6:48 am Reply
  • AE cho hỏi trên macos không có add area thì sao nhỉ :))

    Hải Clover July 17, 2020 6:48 am Reply
  • bài nay hơi khó hiểu anh ạ

    Hoàng Cường Ninh July 17, 2020 6:48 am Reply
  • lúc mới tạo project , chọn MVC 5 được ko a ? có khác quá nhiều ko a ??

    Cường Duy July 17, 2020 6:48 am Reply
  • có thể cho Phương xin database MDF của OnlineShop không Toàn? TEDU Channel

    Hồ Hoài Phương July 17, 2020 6:48 am Reply
  • minh sài visual studio 2012 sao tạo area chạy không đc vậy cần thêm thư viện gì vậy

    Lâm nguyen hoang gia July 17, 2020 6:48 am Reply
  • http://www.mediafire.com/file/o3bdsf9mb3vk94a/OnlineShop_52.zip

    do nhu July 17, 2020 6:48 am Reply
  • Mỗi video click cho bạn 1 quảng cáo, cảm ơn bạn rất nhiều!

    Ai Dung Bui July 17, 2020 6:48 am Reply
  • Thầy ơi em dùng visua 2017 tạo Area mà khai báo đường dẫn nó không hiểu

    Nhất Hoàng Đức July 17, 2020 6:48 am Reply
  • Trong dòng code : new { action = "Index", controllers="Home", id = UrlParameter.Optional } thì viết hoa Controller vẫn chạy được.

    duong tong July 17, 2020 6:48 am Reply
  • Cảm ơn bạn tedu rất nhiều !!

    nhật nguyễn July 17, 2020 6:48 am Reply
  • Bạn nói hơi nhanh :v Cảm ơn bạn rất nhiều

    Dép Rách July 17, 2020 6:48 am Reply
  • Mình tạo giống anh rồi. Nhưng khi vào Index của phần user nó lại báo lỗi. Mình vào http://localhost:55439/Home/Index thì bị lỗi nhưng vào http://localhost:55439/Admin/Home/Index thì okey

    Tân Phạm July 17, 2020 6:48 am Reply
  • a ơi khi tạo admin e bị báo lỗi Could not find a part of the path: "c:program files (x86) microsoft visual studio 12common7ideitem templatescachecsharpwebmvc4mvcarmvcareaitem templatev4.1.csmvcareaitem templates.cs.vstemplate" phải sửa như thế nào ạ?

    an nguyen July 17, 2020 6:48 am Reply
  • anh ơi cho e hỏi lỗi này là gì và cách khác phục sao vậy ạ.
    Multiple types were found that match the controller named 'Home'. This can happen if the route that services this request ('{controller}/{action}/{id}') does not specify namespaces to search for a controller that matches the request. If this is the case, register this route by calling an overload of the 'MapRoute' method that takes a 'namespaces' parameter.

    The request for 'Home' has found the following matching controllers:
    Website.Areas.Admin.Controllers.HomeController.HomeController
    Website.Controllers.HomeController.HomeController

    Trần Lâm July 17, 2020 6:48 am Reply
  • Server Error in '/' Application.

    The resource cannot be found.

    Description: HTTP 404. The resource you are looking for (or one of its dependencies) could have been removed, had its name changed, or is temporarily unavailable. Please review the following URL and make sure that it is spelled correctly.
    lỗi gì vậy mọi người ??????Lên google rồi mà chưa đc. Ai sửa hộ tui với!!!!!!!!!!!!

    Phong Nguyễn July 17, 2020 6:48 am Reply
  • Cám ơn!

    Nam Hồ Thanh July 17, 2020 6:48 am Reply
  • Anh ơi.. em thêm vào nhứ anh nó vẫn lỗi như vậy anh ơi.. chỉ mình với

    TADA TATA July 17, 2020 6:48 am Reply
  • Lỗi như thế này là như thế nào : Multiple types were found that match the controller named 'Home'. This can happen if the route that services this request ('{controller}/{action}/{id}') does not specify namespaces to search for a controller that matches the request. If this is the case, register this route by calling an overload of the 'MapRoute' method that takes a 'namespaces' parameter.

    Minh Thiết July 17, 2020 6:48 am Reply
  • Em có tạo như anh nhưng khi trả về actionresult return RedirectToAction("Index", "New", new { area = "" }); về 1 controller ở thư mục controller mặc định khi tạo project thì nó báo lỗi http://localhost:53808/Admin/New/Index ! cho dù có trả về gì thì vẫn có Admin trên đường dẫn đẫn đến ko tìm ra hàm ! Giờ em muốn gọi đến Controller ở thư mục mặc định thì phải làm thế nào ạ ?

    Phi Lam July 17, 2020 6:48 am Reply
  • Bạn ơi! bạn thao tác lẹ quá, bạn có thể thao tác chậm lại 1 chút nữa được không.

    Kevin Le July 17, 2020 6:48 am Reply
  • Cách sửa lỗi Multiple types were found that match the controller named 'Home'. This can happen if the route that services this request ('{controller}/{action}/{id}') does not specify namespaces to search for a controller that matches the request. If this is the case, register this route by calling an overload of the 'MapRoute' method that takes a 'namespaces' parameter.
    thì:
    B1 : Mở file HomeController ở bên ngoài , để ý cái namespace Online.Controllers ( namespace này để phân biệt cái nào của controller nào là của bên ngoài , hay các area )

    B2 :Vào App_start -> RouteConfig.cs thêm đoạn code ở trong RegisterRoutes():

    namespaces: new string[] { "Online.Controllers" }

    B3: Mở file HomeController ở trong Areas của Admin , để ý cái namespace Online.Areas.Admin.Controllers

    B4 : Vào Areas -> Admin ->AdminAreaRegistration thêm đoạn code ở trong context.Maproute() :

    namespaces: new string[] { "Online.Areas.Admin.Controllers" }

    nếu không rõ thì các bạn có thể tham khảo web http://stackoverflow.com/questions/7842293/multiple-types-were-found-that-match-the-controller-named-home

    lâm Nguyễn July 17, 2020 6:48 am Reply
  • thank you

    Trần Huy July 17, 2020 6:48 am Reply
  • Sau khi ngồi mò một lúc thì cuối cùng thay cái : namespaces: new string[] { "WebApp.Controllers" } => namespaces: new string[] { "HelloWord.Controllers" } . Đúng là mù tin học thật rồi. Câu này giải thích cho tất các các thắc mắc ở dưới OMG 🙂

    Phong Tran Vu July 17, 2020 6:48 am Reply
  • cảu e chạy lên thì chỉ hiển thị trang home trong controller ban đầu chứ ko hiển thị được trang home trong arena

    Nguyễn Gia Tấn July 17, 2020 6:48 am Reply
  • của em không có màu cũng không có format gì hết toàn chữ và link thôi…em có làm thiếu chỗ nào không anh…Em không có Admin mà làm thằng vảo View/Shared/Layout.cshtml

    Long Lương July 17, 2020 6:48 am Reply
  • em làm đến phút thứ 4 nỏ lỗi thế này ah !
    Multiple types were found that match the controller named 'Home'. This can happen if the route that services this request ('{controller}/{action}/{id}') does not specify namespaces to search for a controller that matches the request. If this is the case, register this route by calling an overload of the 'MapRoute' method that takes a 'namespaces' parameter.

    The request for 'Home' has found the following matching controllers:
    book_store.Areas.Admin.Controllers.HomeController
    book_store.Controllers.HomeControlle
    anh giúp em với !

    khai lequang July 17, 2020 6:48 am Reply
  • The request for 'Home' has found the following matching controllers:
    QuanLyKhachSan.Areas.Admin.Controllers.HomeController
    QuanLyKhachSan.Controllers.HomeController
    Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.

    Exception Details: System.InvalidOperationException: Multiple types were found that match the controller named 'Home'. This can happen if the route that services this request ('{controller}/{action}/{id}') does not specify namespaces to search for a controller that matches the request. If this is the case, register this route by calling an overload of the 'MapRoute' method that takes a 'namespaces' parameter.

    The request for 'Home' has found the following matching controllers:
    QuanLyKhachSan.Areas.Admin.Controllers.HomeController
    QuanLyKhachSan.Controllers.HomeController

    Source Error:

    An unhandled exception was generated during the execution of the current web request. Information regarding the origin and location of the exception can be identified using the exception stack trace below.

    Stack Trace:

    [InvalidOperationException: Multiple types were found that match the controller named 'Home'. This can happen if the route that services this request ('{controller}/{action}/{id}') does not specify namespaces to search for a controller that matches the request. If this is the case, register this route by calling an overload of the 'MapRoute' method that takes a 'namespaces' parameter.

    The request for 'Home' has found the following matching controllers:
    QuanLyKhachSan.Areas.Admin.Controllers.HomeController
    QuanLyKhachSan.Controllers.HomeController]
    System.Web.Mvc.DefaultControllerFactory.GetControllerTypeWithinNamespaces(RouteBase route, String controllerName, HashSet`1 namespaces) +412185
    System.Web.Mvc.DefaultControllerFactory.GetControllerType(RequestContext requestContext, String controllerName) +566
    System.Web.Mvc.DefaultControllerFactory.System.Web.Mvc.IControllerFactory.GetControllerSessionBehavior(RequestContext requestContext, String controllerName) +61
    System.Web.Mvc.MvcRouteHandler.GetSessionStateBehavior(RequestContext requestContext) +157
    System.Web.Mvc.MvcRouteHandler.GetHttpHandler(RequestContext requestContext) +33
    System.Web.Mvc.MvcRouteHandler.System.Web.Routing.IRouteHandler.GetHttpHandler(RequestContext requestContext) +12
    System.Web.Routing.UrlRoutingModule.PostResolveRequestCache(HttpContextBase context) +9813471
    System.Web.Routing.UrlRoutingModule.OnApplicationPostResolveRequestCache(Object sender, EventArgs e) +82
    System.Web.SyncEventExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() +141
    System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously) +69

    bị sao vay anh . làm theo bên dưới rồi mà hk có được

    Đồng Đà Lạt July 17, 2020 6:48 am Reply
  • Cam on ban !

    Thanh Nguyen Quang July 17, 2020 6:48 am Reply
  • Minh bi loi nay !

    Thanh Nguyen Quang July 17, 2020 6:48 am Reply
  • Multiple types were found that match the controller named 'Home'. This can happen if the route that services this request ('{controller}/{action}/{id}') does not specify namespaces to search for a controller that matches the request. If this is the case, register this route by calling an overload of the 'MapRoute' method that takes a 'namespaces' parameter.

    The request for 'Home' has found the following matching controllers:
    HelloWorld.Areas.Admin.Controllers.HomeController
    HelloWorld.Controllers.HomeController

    Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.

    Exception Details: System.InvalidOperationException: Multiple types were found that match the controller named 'Home'. This can happen if the route that services this request ('{controller}/{action}/{id}') does not specify namespaces to search for a controller that matches the request. If this is the case, register this route by calling an overload of the 'MapRoute' method that takes a 'namespaces' parameter.

    The request for 'Home' has found the following matching controllers:
    HelloWorld.Areas.Admin.Controllers.HomeController
    HelloWorld.Controllers.HomeController

    Thanh Nguyen Quang July 17, 2020 6:48 am Reply
  • Chủ thớt cho e hỏi là e đang dùng Visual 2015 bản enterprise . e tạo 1project có tên là a.. click phải vào a… chọn add đẻ tạo area nhưng chữ area bị mờ không tạo được là sao ạ . do bản này không hỗ trợ hay bị lỗ gì vậy ạ . thank bác 🙂

    Trần Công Phúc July 17, 2020 6:48 am Reply
  • em bị lõi này khi tạo cái area admin em chay thu view no bi ma em khong biet no bi j
    Server Error in '/' Application.

    The view 'Index' or its master was not found or no view engine supports the searched locations. The following locations were searched:
    ~/Views/Home/Index.aspx
    ~/Views/Home/Index.ascx
    ~/Views/Shared/Index.aspx
    ~/Views/Shared/Index.ascx
    ~/Views/Home/Index.cshtml
    ~/Views/Home/Index.vbhtml
    ~/Views/Shared/Index.cshtml
    ~/Views/Shared/Index.vbhtml

    Phụ Kiện Pro July 17, 2020 6:48 am Reply
  • Manh Thang Nguyen: Em chưa có View nào tên là Index. Tương ứng với 1 controller ví dụ Homecontroller ở trong thưu mục Controllers thì sẽ có 1 thư mục Home ở trong thư mục Views. Và mỗi phương thức ở trong Home Controller sẽ có 1 file View trong View ví dụ /Views/Home/Index.cshtml. Em xem của em có đủ chưa

    TEDU Channel July 17, 2020 6:48 am Reply
  • Server Error in '/' Application.
    The view 'Index' or its master was not found or no view engine supports the searched locations. The following locations were searched
    Em bị lỗi như thế này khi chạy lên web là sao vậy anh?

    Manh Thang Nguyen July 17, 2020 6:48 am Reply
  • sao mình không chạy được Trang chủ của Admin nhỉ? nó không có view in brower (mình dùng visual 2012)

    The Kids July 17, 2020 6:48 am Reply
  • cho mình hỏi là visual 2010 có dùng được tính năng Area không? mình không tạo được toàn báo lỗi không tìm thấy MvcAreaItem.. thôi mà trong ổ cài vẫn có cái đấy

    tam le van July 17, 2020 6:48 am Reply
  • a ơi nó lỗi ko chạy được

    Tín Trần July 17, 2020 6:48 am Reply

Leave a Reply

Your email address will not be published. Required fields are marked *