我从一个页面查询到一条记录(约20多个字段值),想放到另一个页面显示怎么办呢??

解决方案 »

  1.   

    如果非用从a页面传给b页面的话,可以把查询到记录做完datatable传递过去,然后在b页面取datatable里面的内容就可以了。
      

  2.   

    最简单的方法就是把数据放到一个数组或者ArrayList等容器内,利用Session传递到下一个页面。
      

  3.   

    利用Session不大好,Session耗资源大
    如果传20几个值,不如传几个关键值,如id之类
    在下一页面再重新查询
      

  4.   

    传关键值,如id,key 什么的倒下一个页面处理!多数网站都这么做包括csdn,163 等等
    如果传dataTable 即使空的序列化以后也不小
      

  5.   

    1、感觉查出这么多的值需要传递到下一个页面,是不是搂主的思路需要改变一下,为什么不传递查询条件在下个页面进行相应的查询呢?2、如果非要传递,上面的兄弟已经说了“最简单的方法就是把数据放到一个数组或者ArrayList等容器内,利用Session传递到下一个页面。”
      

  6.   

    1.可以用Session方法,但是太点资源;2、用URL,这个可以,但是的URL中可以看到;3、最好的办法,就是楼主改变思路,传条件过去,再进行查询;
      

  7.   

    觉得最好的方法还是放到Session中.虽然用内存,但是完全可以使用完了立即清除该session.
    想想看:传参数到另外一个页面重新进行查询,那么这些操作不耗用内存么?如果2个页面所有人看到的都一致,且参数都一致,那么更好的办法就是放到静态的DataTable中或者放到缓存中.只有服务器重启才会重新获取数据,否则一直使用已经存在的数据,这样性能将更佳
      

  8.   

    继续问大家,当我绑定一个模板列时,大家看我后台代码
    Private Sub DataGrid1_ItemCommand(ByVal source As System.Object, ByVal e As System.Web.UI.WebControls.DataGridCommandEventArgs) Handles db1.ItemCommand
                Dim btn As String = e.CommandName
                Dim i As Integer = 0
                Select Case btn
                    Case "lookCode"   '查看详细页面为WEBXX.ASPX
                        
                          ...                                       
                          ???????我调用WEBXX.ASPX的页面代码该如何写呢?????                Case "Delete"
                        i = CType(Me.db1.DataKeys(e.Item.ItemIndex), Integer)
                End Select
            End Sub