簡體   English   中英

如何在視圖頁面中顯示兩個不同的列表?

[英]How to display two different list in view page?

我是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));
}

創建一個視圖模型來保存它們:

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
}

您可以創建一個模型,例如:

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。 如果您有任何問題-問

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM