我是ASP MVC的新手,我有两个动作方法列表第一个列表包含任务详细信息,第二个列表包含员工ID我希望将这两个列表发送到带有分页的视图页面。我的问题是我无法发送两个列表都可以查看
public ActionResult DisplayProjectTask(string projectId, int? page)
{
List<Task> projectTasksList =bHelper.GetProjectTaskList(projectId);
List<string> empIds = dbHelper.GetTaskEmployeesId(projectId);
return View(projectTasksList.ToPagedList(page ?? 1, 10));
}
答案 0 :(得分:2)
创建一个视图模型来保存它们:
public class FooViewModel
{
public FooViewModel()
{
Tasks = new List<Task>();
EmpIds = new List<string>();
}
public List<Task> Tasks { get; set; }
public List<string> EmpIds { get; set; }
}
从控制器填充它们并返回模型:
public ActionResult DisplayProjectTask(string projectId, int? page)
{
var model = new FooViewModel();
model.Tasks = dbHelper.GetProjectTaskList(projectId).ToPagedList(page ?? 1, 10);
model.EmpIds = dbHelper.GetTaskEmployeesId(projectId);
return View(model);
}
然后将其添加到您的视图中:
@model FooViewModel
@foreach(var task in Model.Tasks)
{
@* Replace with your properties in the Task object *@
@task.ProperyName
}
@foreach(var empId in Model.EmpIds)
{
@empId
}
答案 1 :(得分:1)
您可以创建一个模型,例如:
public class MyTwoListsModel
{
public List<Cars> ListName1;
public List<Animals> ListName2;
public MyTwoLists(List<Cars> list1, List<Animals> list2)
{
this.ListName1 = list1;
this.ListName2 = list2;
}
}
然后在它的ViewController实例中创建并将其传递给View。如果您有疑问 - 请