我在视图中有一个actionLink:
@Html.ActionLink("go", "ShowDetails", "ShowNews", new { id = 2 },null);
和我的RouteConfig:
routes.MapRoute(
name:"newMap",
url: "{controller}/{action}/{id}",
defaults: new { controller = "shownews", action = "showdetails", id = UrlParameter.Optional }
);
点击此actionLink并通过我的控制器中的此鳕鱼请求查询字符串
public ActionResult ShowDetails()
{
int id;
if (!int.TryParse(Request.QueryString["id"], out id))
{
id = 1;
}
var data = new DatabaseContext();
var news = data.newsInfo.Where(x => x.ID == id).FirstOrDefault();
return View(news);
}
但是这个请求返回给我总是返回1(我通过actionLink发送2) 但是当我去谈话时:
localhost/ShowNews/ShowDetails?id=2
request.querystring解析2的值(这是真的) 有什么问题?