|
|
1
4
正如“thelost”提到的,不要为每个属性都有一个字段。保留一个字典作为缓存,这样你就不用为没有访问过的属性支付任何费用。 我建议你有一个方法,你可以提供检索实际值的机制。例如:
这样每个属性最终都相当紧凑—它基本上表示了所涉及的缓存键,以及如何计算属性。如果您需要不同类型的属性,您可能希望缓存只有
如果您在多个地方使用这种方法,您很可能希望创建一个泛型
|
|
|
2
2
未测试:
|
|
|
3
2
如果您使用的是.NET4.0,那么可以使用handy Lazy类。 如果您使用的是以前版本的框架,那么只需编写自己版本的Lazy类(并不特别复杂)。 |
|
|
4
1
懒惰的部分重要吗?如果没有,只需在同一时间填充所有属性(它们都可以是自动的),就完成了。我宁愿这样做,因为如果xml有问题,它会更快地失败。如果懒惰很重要,那么在.NET4中,你可以用懒惰来代替它们。
|
|
|
A B · C#Excel自动调整列避免长文本时出错 8 月前 |
|
|
Megrez7 · C#ToArray转换合并为一行,导致数组元素更改 8 月前 |
|
Aycon · 在工厂方法中释放部分创建的对象的正确方法是什么? 8 月前 |
|
|
Sei · Avalonia/WPF将路由器传递到控制模板 8 月前 |