如何在C#

时间:2016-05-14 07:21:28

标签: c#

我的C#类如下

public class SeatPlans
{
    public int Id { get; set; }
    public string seat_id { get; set; }
    public string seat_no { get; set; }
    public int layout_id { get; set; }
}

我已经创建了一个类对象列表,如下所示

List<SeatPlans> allUser = new List<SeatPlans>();

但我需要的是一系列列表,以便我可以访问多个对象的数据,例如allUser[0]allUser[1]allUser[2]

我的控制器代码如下

public JsonResult getdata(int seat_plane_id)
{
    int lid = seat_plane_id;
    layoutsController L = new layoutsController();
    JsonResult result = L.getlayouts(lid);

    List<layouts> L1 = (List<layouts>)result.Data;
    List<List<SeatPlans>> allUser = new List<List<SeatPlans>>();

    for (int i = 0; i < L1.Count; i++)
    {
        String lid1 = L1[i].ticket_no_start;
        lid = Int32.Parse(lid1);
        allUser[i] = db.SEATPLAN.Where(d => d.layout_id == lid).ToList();
    }

    var v = new { allUser = allUser[0], allUser1 = allUser[1] };

    return Json(v, JsonRequestBehavior.AllowGet);
} 

我正在

  

System.ArgumentOutOfRangeException异常

at

allUser[i] = db.SEATPLAN.Where(d => d.layout_id == lid).ToList();

3 个答案:

答案 0 :(得分:1)

您也可以使用allUser [0],allUser [1],allUser [2]和List。 allUser [0]获取第一个SeatPlan对象,然后您可以从中访问公共成员。

SeatPlan sp = allUser[0];
Console.Writeline(sp.Id);

将打印出第一个SeatPlan对象的Id。

答案 1 :(得分:1)

如果你需要一个2d的对象数组,你可以像这样创建它:

List<List<SeatPlan>> allUser = new List<List<SeatPlan>>();

allUser.Add(db.SEATPLAN.Where(d => d.layout_id == lid).ToList());

请注意,您需要使用Add方法将新对象推送到列表中。

然后可以通过allUser[0][0]访问单个对象,例如获取ID为allUser[0][0].Id

答案 2 :(得分:0)

要拥有一系列列表,您只需声明它:

List<SeatPlans>[] allUsers = new List<SetPlans>[size];

然后您可以按索引获取特定列表:

allUsers[1] = new List<SetPlans>();

获取特定列表的特定元素:

SeatPlans specificSeatPlans = allUsers[1][2];