Asp.net mvc 4 MVC4中的编辑链接-无法获取控制器中的值

Asp.net mvc 4 MVC4中的编辑链接-无法获取控制器中的值,asp.net-mvc-4,razor-2,Asp.net Mvc 4,Razor 2,全部,, 我正在尝试使用MVC4编辑数据 当我点击编辑链接时,我可以看到参数名称和值被追加到查询字符串中,但在控制器中,我无法获得所选行的值 控制器代码 public ActionResult Edit(string id) { PhonebookModel PHm = _phList.Find(x => x.ID == id); return View(PHm); } 在控制器中,我得到的ID为null。。

全部,, 我正在尝试使用MVC4编辑数据

当我点击编辑链接时,我可以看到参数名称和值被追加到查询字符串中,但在控制器中,我无法获得所选行的值

控制器代码

public ActionResult Edit(string id)
        {
          PhonebookModel PHm =   _phList.Find(x => x.ID == id);
            return View(PHm);
        }
在控制器中,我得到的ID为null。。知道我做错了什么吗

注意:我可以看到编辑屏幕,但所有控件都是空的

提前谢谢。生成编辑链接@model IEnumerable的cshtml代码

@{ ViewBag.Title=“Index”; }

指数 @ActionLink(“新建”、“创建”)

@DisplayNameFor(model=>model.FirstName) @DisplayNameFor(model=>model.Last (姓名) @foreach(模型中的var项目){ @DisplayFor(modelItem=>item.FirstName) @DisplayFor(modelItem=>item.LastName) @ActionLink(“编辑”,“编辑”,新的{ID=item.ID})| @ActionLink(“详细信息”,“详细信息”,新的{ID=item.ID})
} 我认为该参数区分大小写,请尝试将ActionLink更改为:

@Html.ActionLink("Edit", "Edit", new { id = item.ID})

请发布生成link@Index.cshtml我有以下代码定义link@Html.ActionLink(“Edit”,“Edit”,new{ID=item.ID})|@Amit-那里没有编辑链接。或者任何传递id的链接。是什么代码生成了到
Edit
操作的链接?@Jack-我已经添加了生成编辑链接的代码。\u phList.Find(x=>x.id==Request[“id”]),我能够获得值。。。这是从UI向控制器选择值的正确方法吗?是的,正是。。。参数区分大小写。。。它现在可以工作了。。。我还尝试了另一件事,即使用Request[“ParamName”]选项获取值。。请参见下面的public ActionResult Edit(){PhonebookModel m=_phList.Find(x=>x.ID==Request[“ID”]);return View(m);}这也是一种有效的方法吗?是的,但为什么要这样做?MVC为您处理绑定是的,在更改案例后,绑定也为我工作。。但我只是想得到对请求的意见[“id”]。谢谢