我已经在这里阅读了一些线程来选择IEnumerable over IList来将数据从控制器传递到视图。 IList的原因对于视图很重要,我理解,因为我们只迭代结果,IEnumerable就足够了。
但是在比较中,IList几乎没有其他属性和方法。我假设它们仅在被调用时执行,这意味着除了对堆上对象的引用之外,不会消耗堆栈内存。那么,如何确定对象是否对某些用途来说很重要。
修改
我了解它们的用法,但任何人都可以提供有关内存消耗的更多详细信息,以及IList被认为是重的原因。
答案 0 :(得分:0)
我认为更原始的数据结构可以阻止开发人员在他们的视图中添加逻辑,这些逻辑利用了更复杂的数据结构提供的丰富功能。这是IMO支持简单数据结构的论据