cacheproducts.aspx

来自「asp.net技术内幕的书配源码」· ASPX 代码 · 共 58 行

ASPX
58
字号
<%@ Import Namespace="System.Data" %>
<%@ Import Namespace="System.Data.SqlClient" %>

<Script Runat="Server">

Sub Page_Load
  If Not IsPostBack Then
    ' Bind to datagrid
    dgrdProducts.DataSource = GetProducts()
    dgrdProducts.DataBind()
  End If
End Sub

Function GetProducts() As DataView
  Dim dstProducts As DataSet
  Dim conNorthwind As SqlConnection
  Dim dadProducts As SqlDataAdapter
  Dim dvwProducts As DataView

  dvwProducts = Cache( "Products" )
  If dvwProducts Is Nothing Then
    dstProducts = New DataSet()
    conNorthwind = New SqlConnection( "Server=localhost;UID=sa;PWD=secret;Database=Northwind" )
    dadProducts = New SqlDataAdapter( "Select * from Products", conNorthwind )
    dadProducts.Fill( dstProducts, "Products" )
    dvwProducts = dstProducts.Tables( "Products" ).DefaultView()
    Cache( "Products" ) = dvwProducts
  End If
  Return dvwProducts
End Function

Sub dgrdProducts_SortCommand( s As Object, e As DataGridSortCommandEventArgs )
  Dim dvwProducts As DataView

  ' Sort DataView
  dvwProducts = GetProducts()
  dvwProducts.Sort = e.SortExpression

  ' Rebind to DataGrid
  dgrdProducts.DataSource = dvwProducts
  dgrdProducts.DataBind()
End Sub
</Script>

<html>
<head><title>CacheProducts.aspx</title></head>
<body>

<form Runat="Server">
<asp:DataGrid
  ID="dgrdProducts"
  AllowSorting="True"
  OnSortCommand="dgrdProducts_SortCommand"
  Runat="Server" />
</form>

</body>
</html>

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?