1

我的数据库中有动态表,我无法将动态表表示为自定义类。请看一下我创建的这个类:

public class Table
{
    public int Id { get; set; }
    public string Name { get; set; }
    public int? ParentId { get; set; }
    public string Description { get; set; }
    public List<Row> Row { get; set; }
}

public class Row
{
    private List<Column> RowColumn { get; set; } 
}

public class Column
{
    public string ColumnName { get; set; }
    public string ColumnType { get; set; }
    public object ColumnValue { get; set; }
}

有没有人看到更好的方法来做到这一点?这个问题与https://stackoverflow.com/questions/12230400/which-dbms-allows-very-large-numbers-of-tables-and-columns-per-table有关

4

1 回答 1

2

如果您绝对需要动态表数据的容器,我会坚持使用DataTable该类而不是自己编写。

我在您的设计中看到的一个问题是,您在每个单元格中冗余地保存了列名和类型。根据这些表的大小,这可能会浪费大量内存。

最好不要重新发明轮子(除非它具有前所未有的功能,例如悬停能力或其他东西)。

于 2012-09-23T22:49:00.047 回答