我是 MVC 新手,遇到以下问题:
在我的应用程序中,客户将能够使用他需要的列/字段自己创建表。
所以我的第一个问题是,如果我不知道表格的外观,我应该如何设计模型类。这是通过将所有字段放在一个列表中来解决的,因此它是动态的。
public class DynamicData
{
public List<decimal> fields { get; set; }
public DynamicData(String tableName)
{
}
}
我还有一个静态表,它将包含有关创建表的信息:
public class Table
{
public int ID { get; set; }
[Required]
public string Title { get; set; }
public string TableName { set; }
[DataType(DataType.Date)]
public DateTime ReleaseDate { get;}
}
接下来是将它们放在 DbContext 中,这对于静态表来说很简单,但对于我创建的表的动态列表来说却不是这样:
public class MyDBContext : DbContext
{
public DbSet<Table> Tables { get; set; }
public List<DbSet<DynamicData>> DynamicTables { get; set; }
public MyDBContext() : base()
{
//how do I get my tables now?
}
}
现在我正处于不知道如何进行的地步。我不确定这是否是最好的方法,但这是我的第一个想法。
2 个问题: 1. 这是最好的方法吗?是否有针对该问题的标准解决方案(动态表数量 + 动态表) 2. 如何在 DbContext 的列表中获取表以及如何获取模型中的字段?