MVC4 Razor使用route.config将ID附加到URL

时间:2013-11-26 15:06:32

标签: asp.net-mvc asp.net-mvc-4 razor

我无法实现我的目标,即在网址中显示ID。这是我到目前为止所做的一个例子。

这是我的BlogController:

 public ActionResult BlogPost(int hiddenBlogId)
    {

        TempData["id"] = hiddenBlogId;
        return View(_repository);
    }

这是我的route.config:

routes.MapRoute(            
            "MyBlog", // Route name
            "blog/{action}/{id}", // URL with parameters
                new { controller = "Blog", action = "blogpost", id = @"0|-?[1-9]\d*" } // Parameter defaults
        );

我完全忽略了某点。如何获取进入我的方法/操作BlogPost的参数,然后将其显示在输出URL中。

http://www.mydomain/controller/id

最终我应该能够显示每个博客的标题。我现在只是为了简单而使用ID。任何帮助都将非常感激。

1 个答案:

答案 0 :(得分:1)

您的路由定义表示第三个值称为id,但您尝试在方法中绑定hiddenBlogId。这两个名字需要匹配。将hiddenBlogId操作方法参数更改为id,或使用{hiddenBlogId}占位符映射新路线。