我正在尝试对类和类的某个部分以及其他部分进行建模。
所以路线应该是
类/类(创建,详细信息,索引,编辑)
然后我有一个分区控制器
ClassSection
所以我会做
Class / 1 / ClassSection /(Create,...),因为没有classid的ClassSection是无用的
然后进一步
类/ 1 / ClassSection / 1 /实例
去SectionInstance控制器
如何映射我的路线以符合此表示法
我已经尝试过在课堂上这样做
routes.MapRoute(
"ClassSections",
"Class/{classid}/ClassSection/{action}/{id}",
new { controller = "ClassSection" },
new { classid = @"d+" }
);
但我无法从Html.ActionLink在类的Index操作中生成正确的链接
最佳答案
您应该考虑使用Areas。听起来您已经朝这个方向发展,但是ASP.NET MVC 2.0已对此提供了特定的支持。
http://haacked.com/archive/2009/07/31/single-project-areas.aspx
考虑到Url模板中的“ Class”和“ ClassSection”有严格的约束,我怀疑您需要新的{classid = @“ d +”}使其唯一匹配。尝试删除MapRoute的那一部分,看看是否可以解决问题。