【发布时间】:2014-07-07 11:11:54
【问题描述】:
我需要构建从两个不同 Excel 源读取的父子对象的类型列表:一个描述父对象,另一个描述子对象。层次结构只有 2 层。
读入 excel 不是问题,因为它被读入 2 个无类型的数据表,但加入信息是。
结构很简单:
父母有一个 ID 和一些文本字段
孩子有一个 parentID(所以它是 1 米)和一些文本字段
要填充这些的对象如下所示:
public class ParkingSites
{
public List<ParkingLot> Lots { get; set; }
public ParkingSites(List<ParkingLot> arg)
{
Lots = arg;
}
}
public class ParkingLot
{
public List<Bay> Bays{ get; set; }
public int Id { get; set; }
public List<string> ParkingLotDetails { get; set; }
public ParkingLot()
{
}
}
public class Bay
{
public List<string> BayDetails { get; set; }
public int ParentId { get; set; }
public Bay()
{
}
}
excel 源具有固定的列顺序,父工作表的第一列是 parentId,子工作表上的第一列也是 parentId。
编辑:玩了一会儿之后,我只是让父类和子类都输入了类型,因为最初让它们大多不输入的原因导致的问题比它所阻止的要多。这是一个更大项目的一部分,在这个项目中,无类型化是解决我们在具有非分层数据的其他类上的问题的更好解决方案。
【问题讨论】:
-
所以
Bay应该有某种ParkingLotId,而ParkingLot应该有一个Id和一个ParkingSiteId等等? -
查看我更新的问题。 ParkingSites 实际上只是 ParkingLots 的列表,仅此而已。
-
那么你怎么知道
Bay.BayDetails中的哪个字符串引用了ParkingLost.ParkingLotDetails中的哪个字符串呢?