在我看来,下面的调用生成以任务/编辑结尾的网址,但我希望它生成网址,例如Tasks / Edit / 23
<%= Html.ActionLink<TaskController>("Edit Task", (x) => x.Edit("23"))%>
Global.asax中的:
string taskController = NameResolver.NameOfController<TaskController>();
string editAction = NameResolver.NameOfAction<TaskController>(x => x.Edit(null));
routes.MapRoute(
"EditTasks",
"Tasks/Edit/{id}",
new { controller = taskController, action = editAction, id = string.Empty });
我在此操作中也存在绑定问题。从视图设置的值不会绑定到我的Edit参数。它每次都为null,我没有在任何地方设置DefaultModelBinder。这是编辑操作:
public ActionResult Edit (string id)
{
//retrieve some data and pass it to view and return view
}
那么这里可能出现什么问题?如何解决网址和绑定问题?是的,我是Asp.Net Mvc初学者:)
答案 0 :(得分:3)
<%= Html.ActionLink("Task", "Edit", new { id = "2" }) %>
虽然为什么你的id是一个字符串而不是一个int?