【发布时间】:2018-04-05 16:19:49
【问题描述】:
我正在使用 nopCommerce 4.0 插件,在我的插件中,我想覆盖 Checkout 控制器中的 OnePageCheckout 操作。
在以前版本的 Mvc 中,这将与以下代码一起使用
routeBuilder.MapRoute("Plugin.Misc.TrialTracker.OnePageCheckout",
"onepagecheckout/",
new { controller = "Checkout", action = "OnePageCheckout" }, new[] { "Nop.Plugin.Misc.TrialTracker.Controllers" });
但是,它在 ASP.NET 核心中不再起作用。这与此处的post 有类似的问题。我不能在那里使用该解决方案,因为我不想触摸默认的 nopCommerce Checkout 控制器。
回顾一下,我有 2 个 Checkout 控制器,一个在命名空间 Nop.Web.Controller 下,另一个在命名空间 Nop.Plugin.Misc.TrialTracker.Controllers 下。并且有一个默认的RouteProvider 注册了路由\onepagecheckout whith Nop.Web.Controller.CheckoutController 控制器的OnePageCheckout 操作。在不触及默认的RouteProvider 和Nop.Web.Controller.CheckoutController 的情况下,如何使\onepagecheckout 路由使用我自己的控制器动作?
谢谢
【问题讨论】:
-
您可以优先尝试。您找到指定自定义命名空间的解决方案了吗?
标签: asp.net-mvc asp.net-core nopcommerce-4.0