MVC路由参数

时间:2010-12-16 21:52:16

标签: asp.net-mvc routing asp.net-mvc-routing

如果我有这条路线:

routes.MapRoute(
                 "BlogRoute", // Route name
                 "blog/{action}", // URL with parameters
                 new { controller = "Blog", action = "Index", id="abc" } // Parameter defaults
             );

...并在控制器中使用此索引方法:

public ActionResult Index(string id)
        {
            return View((object)id);
        }

有人可以将id参数从“abc”更改为其他内容吗?例如,通过将?id = somethingElse附加到URL?我尝试过,但没有改变它。那么保证我在Index方法中总会得到“abc”吗?

基本上我需要在选择一个路由时发送硬编码字符串,并且我不希望用户能够通过URL或任何其他机制更改此字符串。这就像“abc”是一个密码(它不是,但只是假设它)。只允许开发人员通过编辑Global.asax.cs来设置此字符串。

有可能吗?

1 个答案:

答案 0 :(得分:0)

您可以使用正则表达式/ abc /

为id参数添加约束