:: Forum >> Version 2 >>

ASP.NET/ADO.NET example (VB)

Simple grid example in VB using ASP.NET/ADO.NET. This code was simply translated from the classic ASP example - probably there is a better/more efficient way to do the same thing in ASP.NET.

<%@ Page Language="VB" %>
<%@ 
Import Namespace="System.Data" %>
<%@ 
Import Namespace="System.Data.OleDb" %>

<
script runat="server">

    
Dim strConnection As String "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" Server.MapPath("App_Data/authors.mdb")
    
Dim strCommand As String "SELECT * FROM authors"
    
    
Dim oConnection As OleDbConnection
    Dim oCommand 
As OleDbCommand
    Dim oDataReader 
As OleDbDataReader
    
    Sub page_load
()
       
        
oConnection = New OleDbConnection(strConnection)
        
oConnection.Open()
        
        
oCommand = New OleDbCommand(strCommandoConnection)
        
oDataReader oCommand.ExecuteReader()
    
End Sub

    Sub page_unload
()

        
oDataReader.Close()
        
oConnection.Close()
    
End Sub

    Private 
Function aw_string(ByVal s As String) As String

        s 
s.Replace("\", "\\")
        s = s.Replace("""", "\""") 'replace javascript control characters - "
, \
        
rem s s.Replace(vbCr"\r")
        
rem s s.Replace(vbLf"\n")

        Return 
"""" """"
    
End Function

    Function 
aw_headers(ByVal oDataReader As OleDb.OleDbDataReader) As String

        Dim i
countheaders()

        
count oDataReader.FieldCount
        
        ReDim headers
(count 1)

        For 
0 To count 1
            headers
(i) = aw_string(oDataReader.GetName(i))
        
Next

        Response
.Write("[" Join(headers", ") & "];")
        
        Return 
""
    
End Function

    Function 
aw_cells(ByVal oDataReader As OleDbDataReader) As String

        Dim i
col_countrow_countcolumns(), rows()

        
row_count 0
        col_count 
oDataReader.FieldCount
        
        ReDim columns
(col_count 1)

        While (
oDataReader.Read())

            For 
0 To col_count 1
                columns
(i) = aw_string(oDataReader(i).ToString())
            
Next

            ReDim Preserve rows
(row_count)

            
rows(row_count) = vbTab "[" Join(columns", ") & "]"
            
row_count row_count 1

        End 
While

        
Response.Write("[" vbNewLine Join(rows"," vbNewLine) & vbNewLine "];" vbNewLine)
        Return 
""
        
    
End Function

</
script>

<
html>
<
head>
    <
script src="runtime/lib/aw.js"></script>
    <
link href="runtime/styles/xp/aw.css" rel="stylesheet" />
</
head>
<
body>
<
script>

//    insert javascript arrays produced by ASP.NET functions
    
var myHeaders = <%= aw_headers(oDataReader) %>
    var 
myCells = <%= aw_cells(oDataReader) %>

//    create grid control
    
var obj = new AW.UI.Grid;

//    set grid text
    
obj.setHeaderText(myHeaders);
    
obj.setCellText(myCells);

//    set number of columns/rows
    
obj.setColumnCount(myHeaders.length);
    
obj.setRowCount(myCells.length);

//    write grid to the page
    
document.write(obj);

</
script>
</
body>
</
html>
 
Alex (ActiveWidgets)
Monday, July 31, 2006



This topic is archived.

Back to support forum

Forum search