EntityFramework Code首先使用强类型表和动态表名

时间:2012-11-13 12:33:33

标签: c# entity-framework ef-code-first dynamic-tables

我正在尝试创建一个应用程序,它在运行时创建具有相同结构但不同表名的表。

不同的工作将收集数据,每个工作都应该得到自己的表,因为每个工作将收集超过1000万个条目,我不想将它们存储在一个表中。 每个作业的存储条目类型相同,但每个表都应以作业名称命名。

最后我不会做这样的事情:

JobResultType result001 = context.Table("JobResults001").Where(...); 
List<JobResultType> results002 = context.Table("JobResults002").Where(...).ToList();
...

我已经尝试过EntityFramework Code First和Linq2SQL,但没有得到解决方案。

是否有人知道这个问题的轻量级和干净的解决方案?

解决方案应该适用于SQL Server和MySql; - )

谢谢!

1 个答案:

答案 0 :(得分:1)

在EF中,您可以使用流畅的映射来控制数据来自的表名称:

modelBuilder.Entity<JobResultsType>()
    .ToTable("JobResults0001");

那么,也许您可​​以创建不同的上下文或重新运行不同作业的流畅映射?所以一个工作进来,然后你创建一个新的上下文,使用新的表名映射到...我认为应该工作......