【问题标题】:C# dynamic class properties questionC#动态类属性问题
【发布时间】:2011-05-05 22:41:57
【问题描述】:

我有一个关于设计处理大量 (10K+) 动态属性的类的最有效方法的问题。属性只包含布尔值或双精度值类型。

我想了几个答案,但不确定我是否走上了正轨。

  1. 类有一个属性可以传递哈希表
  2. 在运行时使用代表父节点的属性创建类,可用于检索具有子节点属性的子类。

【问题讨论】:

  • 高效是指运行时最快吗?还是您的意思是易于管理?
  • 嗯,这些属性没有绑定,所以我会说在运行时最快。
  • 是否需要在内存中保存所有 10K?还是只有一个子集?
  • 如果你有一个类有 10k+ 动态属性,请重新设计你的架构师。

标签: c# design-patterns class dynamic properties


【解决方案1】:

我相信您实际上不是在谈论属性,而是在谈论名称-值对的集合。 Dictionary 类涵盖了这一点。 .NET 4.0 中可用的 ExpandoObject 类也许值得一提。

【讨论】:

  • 最初,类属性被用作名称值对 - 但随着属性数量的增长,看起来 Dictionary 对象可能更有效。谢谢
猜你喜欢
  • 2017-11-07
  • 2020-12-01
  • 2013-07-12
  • 2010-12-28
  • 1970-01-01
  • 2016-02-15
  • 1970-01-01
  • 2014-08-27
  • 1970-01-01
相关资源
最近更新 更多