我的项目页面有个<%: Html.ActionLink("查看", "Index", "Contract", new { id = item.ProjectId })%>
controller里有两个Index,Index()为返回所有合同列表,Index(int id)为返回对应ID项目的合同,现在为什么点击查看链接,没反应?
public ActionResult Index()
{
return View(projectManangementDB.ProjectManagement_Contract.ToList());
}
public ActionResult Index(int id)
{
var contractToDetails = (from c in projectManangementDB.ProjectManagement_Contract where c.ProjectId == id select c).ToList();
return View(contractToDetails);
}
生成的链接是什么样的?
Html.ActionLink如何传值到另一个控制器中的某个Action。
@诸葛捕鱼: 要使得参数名一致(区分大小写),且类型是可转换的
晕,两个都是Index() 而且返回的都是View(),系统怎么知道你要路由到什么地方呢?
return View()的意思是返回html页面的,你两个view是能生成两个index.cshtml?
换个做法:一个index(int id),判断id生成不同的数据。
<%: Html.ActionLink("查看", "selectContractByProjectId", "Contract", new { id = item.ProjectId }, "")%>