【发布时间】:2014-05-22 12:27:30
【问题描述】:
我正在尝试创建一个将覆盖 TopicsDetails.cshtml 页面的插件。我添加了这样一条路线:
routes.MapRoute("Nop.Plugin.Other.CustomTopic.ViewCustomTopic", "{SeName}",
new { controller = "CustomTopic", action = "TopicDetails", SeName = UrlParameter.Optional },
new[] { "Nop.Plugin.Other.CustomTopic.Controllers" });
这会将所有 {SeName} 都发送到我的 CustomTopicController 。甚至是产品 SeName。
如果我添加这个而不是旧的:
routes.MapRoute("Nop.Plugin.Other.CustomTopic.ViewCustomTopic",
new { controller = "CustomTopic", action = "TopicDetails" },
new[] { "Nop.Plugin.Other.CustomTopic.Controllers" });
我收到一个错误,因为 TopicDetails(int itemId) Action 接收到一个未提供的整数,因为我们知道 GenericPathRoutes.cs 提供了该整数。
我怎样才能覆盖 GenericPathRoutes.cs 的规则来做到这一点,以便只有主题 SeName 会点击我的控制器,或者是否有其他方法可以做这种工作,甚至有可能做?
【问题讨论】:
-
不清楚你想要什么,能否请你用一两句话说明你想要什么?
-
试图通过 nopCommerce 3.3 中的插件覆盖 TopicDetails.cshtml 页面
标签: c# nopcommerce