<%@ Import Namespace="System.Data" %>
<%@ Import Namespace="System.Data.SqlClient" %>
<Script Runat="Server">
Sub Page_Load
If Not IsPostBack Then
' Bind to datagrid
dgrdEmployees.DataSource = GetEmployees()
dgrdEmployees.DataBind()
End If
End Sub
Function GetEmployees() As DataView
Dim dstEmployees As DataSet
Dim conNorthwind As SqlConnection
Dim dadEmployees As SqlDataAdapter
Dim dvwEmployees As DataView
dvwEmployees = Cache( "Employees" )
If dvwEmployees Is Nothing Then
dstEmployees = New DataSet()
conNorthwind=New SqlConnection( "Server=localhost; UID=sa;PWD=secret;Database=Northwind" )
dadEmployees = New SqlDataAdapter( "Select * from Employees", conNorthwind )
dadEmployees.Fill( dstEmployees, "Employees" )
dvwEmployees=dstEmployees.Tables("Employees"). DefaultView()
Cache( "Employees" ) = dvwEmployees
End If
Return dvwEmployees
End Function
Sub dgrdEmployees_SortCommand( s As Object, e As DataGridSortCommandEventArgs )
Dim dvwEmployees As DataView
' Sort DataView
dvwEmployees = GetEmployees()
dvwEmployees.Sort = e.SortExpression
' Rebind to DataGrid
dgrdEmployees.DataSource = dvwEmployees
dgrdEmployees.DataBind()
End Sub
</Script>
<html>
<head><title>CacheAddressbook.aspx</title></head>
<body>
<form Runat="Server">
<asp:DataGrid
ID="dgrdEmployees"
AllowSorting="True"
OnSortCommand="dgrdEmployees_SortCommand"
Runat="Server" />
</form>
</body>
</html> |