|
|
1
3
你想做的事会让你卷入其中。净3.5。你最好用字典创建一个类型<>模型中数据的键/值对。
如果你能用。NET4.0,你可以看看
using dynamic and ExpandoObject
这个
如果你需要做的就是将数据加载到现有的类型,那么你应该考虑使用类似的东西。 EntityFramework 或 NHibernate 为您的类型提供ORM行为。 为了处理数据加载性能,我建议您考虑绕过DATABATE,并将记录直接加载到正在生成的类型中。我怀疑大多数性能问题都是在从数据表中读取和转换它们原来所在的值时出现的。 |
|
|
2
1
你应该使用一个剖析器来找出,到底什么需要时间,然后在这方面进行优化。如果在设置数据时使用反射,则速度会很慢。缓存反射的类型数据可以节省很多时间。 我很好奇,如果编译时不知道这些类的成员,您将如何使用它们?在这种情况下,您最好只使用一个简单的数据表? |
|
|
3
1
看看PicoPoco和Massive。这些是微型机器人。(轻量级开源ORM框架),只需将单个代码文件复制到项目中即可使用。 Massive使用ExpandoObject并将IDataRecord转换为ExpandoObject,我认为这正是您想要的。 PicoPoco采用一个现有的普通类,并动态高效地生成一个方法(然后顺便缓存)从数据库中加载它。 |