2

我正在使用名为“Home”的默认控制器。

我有以下 ActionResult:

public ActionResult SetID(string ID)
{
    int? result = MyGateway.GetAccountByID(ID);
    Common.IDNum = result;
    return View("Index","Home");
}

我想像这样传递 IDNumber:

http://localhost:3314/Home/SetID/AA3420

……不喜欢……

http://localhost:3314/Home/SetID?ID=AA3420

上面的链接开始由返回列表的视图生成。要选择一条记录,他们单击上面的链接“选择”。我目前正在将“AA3420”设置为位于名为 Common.cs 的 CS 文件中的会话变量。

我怎样才能让我的 URL 看起来像:http://localhost:3314/Home/SetID/AA3420

4

2 回答 2

3

通过在 global.asax Application_Start 中注册以下路由:

 var routes = RouteTable.Routes;

 routes.MapRoute(
            "ID Action", // Route name
            "{controller}/{action}/{id}", // URL with parameters
            new {controller = "Home", action = "SetID", ID = ""} // Parameter defaults
            );
于 2011-12-02T15:46:11.307 回答
0

查看您的 Global.asax。在那里你定义了一个默认路由和一个默认参数。像这样:

routes.MapRoute(
    "Default", // Route name
    "{controller}/{action}/{id}", // URL with parameters
    new { controller = "Home", action = "Index", id = UrlParameter.Optional } // Parameter defaults
);
于 2011-12-02T15:47:45.427 回答