在子网格中显示细节



Orders网格包含一个用于订单详细信息的子网格。通常我是通过实现RowDataBound事件来做到这一点的。但我认为这是坏主意,从数据库中获取订单的每一行网格的详细信息。有没有更好的办法?

谢谢

说到"坏主意",我想你是指从性能的角度来看。在我看来,根据应用程序的性能期望,您所描述的场景不一定是一个坏主意。你建议的方法是我能想到的最容易实现的方法,如果你的页面不经常被点击,这可能是最好的方法。

话虽如此,我可以想到另外两种方法来解决这个问题。

1)在DB级别连接您的订单详细信息,并使用中继器手动呈现表,仅在主订单记录更改时添加外部行。这种方法只需要在每次页面呈现时访问数据库一次,但是需要编写更多的代码来表示。

2)在页面加载中预取所有订单详细信息到DataTable或collection中,并从那里加载您的外部gridview RowDataBound上的详细信息。此方法还可以将访问数据库的次数减少到两次(一次用于订单,一次用于订单详细信息),但不需要那么多的表示编码。

最新更新