我目前有以下链接从一个视图导航到另一个视图:
"<td class='EmployeeTableTD'><a href='personDetails'>" + item.Name + " " + item.Surname + "</a></td>" +
该表在Javascript中动态创建,并从ADO模型中获取数据(项)。
我想附加参数以将它们传递给控制器,然后传递到下一个屏幕的视图。
我试过平常的
'personDetails?myParameter=' + item.Name
方法类型,但这会导致404错误。我也尝试在代码中插入一个@ HTML.ActionLink,但这也有问题,因为智能感知器无法识别&#39; item&#39;在尝试设置参数时。
有没有办法可以将动态参数从此视图链接传递到下一个控制器/视图?
控制器:
using System;
...
namespace techTest4.Controllers
{
public class HomeController : Controller
{
private TechTestEntities techContext = new TechTestEntities();
public ActionResult personDetails()
{
return View();
}
public ActionResult Index()
{
return View();
}
所以我的导航正确地转到了#home / personDetails&#39;以及&#39; personDetails.cshtml&#39; view(它还没有,但需要输出传递的参数)。它可以说应该导航到&#39; Home / personDetailsController / {someIndexMethod}&#39;将处理下一页的设置。
配置:
routes.MapRoute(
name: "Details",
url: "PeopleDetails/{action}/{id}",
defaults: new
{
controller = "PeopleDetails",
action = "All",
id = UrlParameter.Optional
}
);
答案 0 :(得分:2)
您必须指定您在行动中接收的参数:
public ActionResult personDetails(String myParameter)
{
return View();
}