我熟悉CodeIgniter,所以我不是新手,但是当我使用C#/ .NET迁移到MVC时,我确实感觉像是一个新手。我希望调用下面的控制器可以正确地将URL的斜杠分隔参数绑定到控制器输入参数。例如:我希望http://localhost/Download/51
给出fileID = 51。但是,当我运行它时,调用控制器时fileID为null。要么HttpGet需要查询?和&或者需要以某种方式修改路由以正确绑定。请帮帮忙?
[HttpGet]
public ActionResult Download(String fileID)
{
....// http://localhost/Download/51
}
答案 0 :(得分:1)
使用id
,这是Global.asax
中配置的默认路由参数名称:
[HttpGet]
public ActionResult Download(string id)
{
....// http://localhost/Download/51
}
或更改您的路由配置,以便使用fileID
:
routes.MapRoute(
"Default",
"{controller}/{action}/{fileid}",
new { controller = "Home", action = "Index", fileid = UrlParameter.Optional }
);
另请查看following以获取有关路由的详细信息。