我通过此代码获得了一个webgrid
@grid.GetHtml(
tableStyle: "webgrid",
columns: grid.Columns(
grid.Column(header: "Link", style: "labelcolumn", format: (item) => Html.ActionLink("Edit Item", "EditQueue", new { id = item.QueueID})),
grid.Column("Description", "Description"),
grid.Column("QueueDate", "QueueDate"),
grid.Column("Note", "Note"),
grid.Column("Status", "Status"),
grid.Column("LastUpdated", "LastUpdated")
)
)
我创建了一个ID为1的测试用例。然后单击第一列中的链接。我收到404错误,因为我没有在 / Home / EditQueue / 1
创建一个页面但是我显然不想为每个号码创建一个页面。创建一个只显示我传入其中的ID的页面的最佳做法是什么?
答案 0 :(得分:1)
在HomeController中创建一个接受id
参数的动作方法
public ActionResult EditQueue(int id)
{
//Get the details of queue using id and return a view.
return View();
}
您可能希望显示要编辑的数据。所以使用id获取数据并返回。
public ActionResult EditQueue(int id)
{
//Get the details of queue using id and return a view.
Queue queue=repositary.GetQueueFromID(id);
return View(queue);
}
假设repositary.GetQueueFromID
方法将返回Queue
类对象,并且您的视图(Edit.cshtml
)的类型强烈。
答案 1 :(得分:0)
让你的方法使用你在控制器中传递的参数..