2010-10-18 84 views
0

如果可能的话,我想跟踪路由中的ID吗?这是相当多我想要的东西:Asp.Net MVC - 跟踪路由中的ID

/groups/{id} - Show group 
/groups/{id}/forum/topic/{id} - Show forum topics for the group 
/groups/{id]/calendar/ - Show the calendar for the group 

正如你看到我想要跟踪的用户是什么组由URL,而不是让我们说的cookie。

谢谢!

回答

1

你有没有在你的路由定义{id},如:

routes.MapRoute(
    "", 
    "groups/{id}/forum/topic/{topicId}", 
    new { controller = "Forum", action = "Topic" }); 

和你的控制器:

public class ForumController : Controller 
{ 
    public ActionResult Topic(int id, int topicId) 
    { 

    } 
} 

这真不明白你怎么想跟踪它....

+0

我对mvc完全陌生,所以也许我应该在提问之前再研究一些问题。看起来我需要做的是,当我创建一个链接时,我不断传递groupid(上面的第一个{id})。现在我只是想知道如何在视图中获取组ID,并将其传递给例如ActionLink。 – ZNS 2010-10-18 14:17:51

0

只要使用Id生成所有可能的Url,就会工作。对于这些路由,您可以使用以下访问{ID}:

int id = int.Parse(RouteData.Values["id"].ToString()); 

包含的标识可能是麻烦的,以确保每一页上的每一个环节。没有静态的Url将被允许。例如,如果用户点击了主页或/ about,该Id将会丢失。