【问题标题】:ASP.NET custom routes for simple requirements management tool用于简单需求管理工具的 ASP.NET 自定义路由
【发布时间】:2010-05-11 06:48:45
【问题描述】:

我正在实施一个非常简单的需求管理工具。

我希望 URL 看起来像这样:

显示“项目一”的主页:
http://projectmanager/Project/Project%20One

显示“项目一”正在处理的需求列表
http://projectmanager/Project/Project%20One/Requirements

显示“项目一”的要求 1
http://projectmanager/Project/Project%20One/Requirement/1

我怎样才能设置路线,以便

http://projectmanager/Project/Project%20One 

由项目控制器处理

http://projectmanager/Project/Project%20One/Requirements
and
http://projectmanager/Project/Project%20One/Requirements/1

由需求控制器处理。

有可能吗?

【问题讨论】:

    标签: asp.net-mvc routes


    【解决方案1】:

    我认为是的。

    其中一个选项:

    控制器:

    public class ProjectController : Controller
    {
        public ActionResult Project(string projectName)
        {
            return Content("Project: " + projectName);
        }
    }
    
    public class RequirementsController : Controller
    {
        public ActionResult Requirements(string projectName)
        {
            return Content("Requirements: " + projectName);
        }
    
        public ActionResult Requirement(string projectName, int id)
        {
            return Content("Requirement: " + projectName + " - " + id);
        }
    }
    

    路线注册:

            routes.MapRoute(null,
                            "Project/{projectName}",
                            new {controller = "Project", action = "Project"});
            routes.MapRoute(null,
                            "Project/{projectName}/Requirements",
                            new { controller = "Requirements", action = "Requirements" });
            routes.MapRoute(null,
                            "Project/{projectName}/Requirement/{id}",
                            new { controller = "Requirements", action = "Requirement" });
    

    Id 取决于你想要什么其他路线。

    编辑:顺便说一句:应该在默认路由之前添加此路由(如果您仍然从应用模板中获得它)。

    【讨论】:

      猜你喜欢
      • 2014-01-11
      • 1970-01-01
      • 2014-11-12
      • 1970-01-01
      • 2010-09-27
      • 1970-01-01
      • 2011-11-23
      • 2011-06-05
      • 1970-01-01
      相关资源
      最近更新 更多