我最近不得不用缓慢的网格负载来解决性能问题。经过调查,看起来有人用List<Product>
来填充网格。问题是Product对象有很多属性,其中很多都没有.lazyloads(),其中大部分都不需要网格。
因此,为了解决这个问题,我创建了一个名为ProductLite的新对象,它只有延迟加载,关于连接的大部分关键信息和性能现在都很好。它没有进行10,000次点击,而是达到了1。
我向SO社区提出的问题,您如何为对象建模?我认为所有对象都应该有“详细信息”和“信息”版本,因为有时需要加密对象。 IE浏览器。 ProductDetails 将包含所有信息而不会在列表中使用,而 ProductInfo 将只包含用于列表,快速查找等的高级信息。
是否有标准被采纳为建模对象的最佳实践?
答案 0 :(得分:4)
这里的问题是你将域模型对象与DTO / Presentation Model对象混淆。
我通常不愿意将任何指南视为“最佳做法”,但这里有一些一般提示:
batch-size
设置(经验法则:使用您的页面大小)