2012-06-07 55 views
2

我有大约20个网格视图,我必须创建。所有这些都是相当标准的全面。只需要IEnumerable T并将其显示在网格视图中,就是这样。建立单独的页面或不是

我宁愿创建一个aspx页面,并使用ITemplate动态生成网格视图。我猜想数据源使用IEnumerable Object。

在按照我想要做的方式做它之间是否存在重要的性能考虑因素,还是最好在单独的aspx页面上构建20个或更多的网格视图?

我关心的一个例子是将List T和cast转换为IEnumerable T,其中T是Object类型。

回答

1

有一个通用视图页面是最好的 - 它可能听起来像你的情况。

其次,由于IEnumerable是List所具有的行为,所以从List到IEnumerable没有性能问题。

然而,你会得到一个性能命中建立一个列表,如果你不已经拥有了它 - 这是好得多,以确保您传递的IEnumerable从LINQ语句直接作为使用时,它才意识到 - 它可以有长列表和使用排序或筛选时的主要优点(因为您可以在IEnumerable实现之前修改它)

与任何与性能相关的内容构建它并对其进行配置以查看性能是否成问题。没有多少意见,但是知情的是替代剖析,只有在必要时才进行优化,总是避免过早优化。

0

如果有什么习俗,你必须只显示所有20桌默认数据/列表的话,我认为你应该使用一个页面

1

20格的意见,确定

只要确保你禁用ViewState不需要它的控件。

这将大大减少你的页面大小&依次减少页面加载时间。

2

建立一个和性能测试。应用经验教训会更容易。

如果数据很长,请关闭缓冲以提高第一个字节的时间。

+0

您能否帮我理解当您说“关闭缓冲...”时您的意思 – Rod

+1

<%@ Page ... Buffer =“False”%>默认情况下,这是True,表示整个页面,向下到最后一个字节,直到完全写出为止。然后它被发送到客户端。如果页面很长,则会浪费用户的时间。如果页面很短,关闭该页面会浪费服务器和客户端CPU。 –

相关问题