在我们的应用程序中,我们正在考虑使用动态生成的类来保存我们的大量数据。这样做的原因是我们的客户的表具有不同的结构。因此,您可以有一个名为“DOG”的客户表(只是编造这个),其中包含“DOGID”、“DOGNAME”、“DOGTYPE”等列。客户 #2 可以具有与“列”相同的表“DOG” DOGID”、“DOG_FIRST_NAME”、“DOG_LAST_NAME”、“DOG_BREED”等。我们不能在编译时为这些创建类,因为客户可以随时更改表模式。
目前我的代码可以在运行时使用反射生成一个“DOG”类。我想弄清楚的是如何从 DataTable(或其他一些 .NET 机制)中填充此类,而不会造成极大的性能损失。我们有一张包含约 20 列和约 50k 行的表。对所有行和列执行 foreach 以创建集合大约需要 1 分钟,这有点太长了。
我是想提出一个过于复杂的解决方案,还是我走在正确的轨道上?有没有其他人遇到过这样的问题?创建动态类是微软开发人员提出的解决方案。如果我们可以填充这个集合并有效地使用它,我认为它可以工作。