【问题标题】:MVC routing doesn't pickup querystringMVC 路由不拾取查询字符串
【发布时间】:2009-10-15 16:36:08
【问题描述】:

在我的 Global.ascx.cs 中,我有这个路由设置:

routes.MapRoute(
"HomeTarget",
"{TargetCode}",
new { controller = "Home", action = "Index", TargetCode = "" });

routes.MapRoute(
    "Default",                                              // Route name
    "{controller}/{action}/{id}",                           // URL with parameters
    new { controller = "Home", action = "Index", id = "" }  // Parameter defaults

在我的 HomeController 中,我有一个这样的 Index() 操作:

[AcceptVerbs(HttpVerbs.Get)]
    public ActionResult Index(string TargetCode)
    {
        return View();
    }

当我访问该站点时,例如 mysite.com/Test1,我想它应该将“Test1”作为 TargetCode,但它没有......我应该怎么做才能拾取“Test1” " 作为 TargetCode,我不想这样做:mysite.com/?TargetCode=Test1

非常感谢, 肯尼。

【问题讨论】:

  • 您的示例适用于使用默认 Visual Studio 模板创建并在 Cassini 下运行的简单 ASP.NET MVC 应用程序。所以也许你的配置中有一些特定的东西阻止它选择所需的路线。
  • 显然 MVC 引擎或 VS 有问题...我只是注释掉代码,构建解决方案,然后取消注释代码,然后重新构建,一切正常预期的!感谢您关注达林。

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


【解决方案1】:

似乎有些东西在 VS 2008 或框架中起作用。它现在工作得很好。感谢观看。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-04-01
    • 1970-01-01
    • 2020-12-28
    • 1970-01-01
    • 2015-04-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多