Use an ASPCompat page with Old ADO Connection and Recordset
Use the GetRows() function to pop the data into an Array
<%@ Page Language="vb" AutoEventWireup="false" ASPCompat="true"
Codebehind="RepeatThis.aspx.vb" Inherits="COURTS.RepeatThis"%>
This CODE WORKS. I JUST TESTED IT!!!!!!
Modify it for YOUR Application
Private Sub Page_Load(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles MyBase.Load
'Put user code to initialize the page here
Dim dbConn As Object
Dim rs As Object
Dim arrRows As Object
Dim intX As Integer
Dim intY As Integer
' remember to USE an ADO connection string;for ease of use, I created
an ODBC DSN
' from the ODBC Admin Interface
dbConn = Server.CreateObject("ADODB.Connection")
dbConn.Open("DSN=MyDSN;Uid=MyUser;Pwd=MyUser")
rs = dbConn.Execute("SELECT Item, Price, Qty FROM Items")
arrRows = rs.GetRows()
rs.Close()
dbConn.Close()
' creat the datasource table for the repeater
Dim _table = New DataTable
' add the columns needed to the table; repeat as necessary
Dim _col1 As New DataColumn
Dim _col2 As New DataColumn
Dim _col3 As New DataColumn
_col1.ColumnName = "Item"
_col1.DataType = System.Type.GetType("System.String")
_col2.ColumnName = "Price"
_col2.DataType = System.Type.GetType("System.String")
_col3.ColumnName = "Qty"
_col3.DataType = System.Type.GetType("System.String")
' add the columns to the table
_table.Columns.Add(_col1)
_table.Columns.Add(_col2)
_table.Columns.Add(_col3)
' create a datarow
intY = UBound(arrRows, 2)
For intX = 0 To intY
Dim _row As DataRow
_row = _table.NewRow()
_row("Item") = CType(arrRows(0, intX), String)
_row("Price") = CType(arrRows(1, intX), String)
_row("Qty") = CType(arrRows(2, intX), String)
_table.Rows.Add(_row)
Next
Repeater1.DataSource = _table
Page.DataBind()
End Sub
Quoting Dean Fiala <[EMAIL PROTECTED]>:
> In this instance, changing from one version of SQL Server to another
> is not going to get you a noticable performance boost. This is a
> display and rendering problem, not a retrieval problem.
>
> On 12/21/05, [EMAIL PROTECTED] <[EMAIL PROTECTED]> wrote:
> > I agree. I pretty much already knew the answer but figured I would give
> you guys a shot. Usually I would do something like a treeview structure with
> product category 1. The user would click on a category 1 and then select
> Category 2. When category 2 is clicked I would fetch and display the 300 or
> so products. But management is being kind of hardheaded on this one. I have
> already given them sorting and searching capabilities to easily find
> products. And like I said, presently I display 20 rows at a time and allow
> them to click the Next button to fetch the next 20 rows. It is all very
> fast. I will just have to let them know that this impossible. I am going to
> try running my database using SQL 2005 though. I assume it is faster but I
> don't think this is the solution.
> >
> > -------------- Original message --------------
> > From: Dean Fiala <[EMAIL PROTECTED]>
> > There are things you could try, like loading only a minimum-data row
> > that has a few key pieces of info about the product and then when the
> > user selects the row either expanding it to show all product data via
> > AJAX or opening it on a detail page.
> >
> > But the basic problem is that:
> > No one actually needs or wants to look at 25,000 individual rows.
> > That's not a user interface that's a useless interface. They want to
> > find what they're looking for, not have to hunt for it, or even wait
> > for it to load.
> >
> > It's a whopping huge amount of html. At a conservative 100 bytes/row
> > it's 2.5 MB web page! So for a poor slob on a dial-up connection is
> > going to be able to get a cup of coffee while it loads. Even a high
> > speed connection is going to run into time-out issues and cranky
> > browsers.
> >
> > On 12/21/05, bh0526 <[EMAIL PROTECTED]> wrote:
> > > Hi all,
> > >
> > > I am rewriting an old VB 6 app to ASP.net / VB.Net. The application
> > > is for some commercial software we sell. I am having some problems
> > > since I have to work with enormous amounts of data. For example,
> > > the Products table is 360,000 rows.
> > >
> > > I am presently working on a page that allows the user to select one
> > > or more products and then run some statistical reports against these
> > > selected products. I am using the repeater control to display the
> > > products since this loads much faster than the datagrid. I also
> > > fetch all products that start with the letter "A" when the page
> > > loads. Above my repeater, I have linkbuttons like A B C D thru Z.
> > > The user clicks one of these letters and the products starting with
> > > this letter are displayed. This is fine but some letters like "C"
> > > have about 25,000 products. I usually get a timeout error before
> > > the repeater is filled. Or it just takes way too long. So I made
> > > my repeater only display 20 rows at a time and then have Next / Prev
> > > buttons to get rows as I need them. Now everything is very fast.
> > > The problem is that management does not like this. They are ok with
> > > the letter links but if the user clicks on "C" then they want all
> > > the "C" products displayed so that the user can scroll quickly to
> > > the bottom. I also have textboxes for searching and my headings are
> > > links that when clicked will sort by that field. My problem is
> > > loading 25,000 rows of data on a web page. Is there anything at all
> > > I can do to make this work?
> > >
> > > Thanks,
> > > Bob
> > >
> > >
> > >
> > >
> > >
> > >
> > >
> > > Yahoo! Groups Links
> > >
> > >
> > >
> > >
> > >
> > >
> > >
> > >
> >
> >
> > --
> > Dean Fiala
> > Very Practical Software, Inc
> > http://www.vpsw.com
> >
> >
> > SPONSORED LINKS Basic programming language Computer programming languages
> Programming languages
> > Java programming language
> >
> >
> >
> > YAHOO! GROUPS LINKS
> >
> > Visit your group "AspNetAnyQuestionIsOk" on the web.
> >
> > To unsubscribe from this group, send an email to:
> > [EMAIL PROTECTED]
> >
> > Your use of Yahoo! Groups is subject to the Yahoo! Terms of Service.
> >
> > [Non-text portions of this message have been removed]
> >
> >
> >
> >
> >
> > Yahoo! Groups Links
> >
> >
> >
> >
> >
> >
> >
> >
>
>
> --
> Dean Fiala
> Very Practical Software, Inc
> http://www.vpsw.com
>
>
>
>
> Yahoo! Groups Links
>
>
>
>
>
>
------------------------ Yahoo! Groups Sponsor --------------------~-->
Fair play? Video games influencing politics. Click and talk back!
http://us.click.yahoo.com/2jUsvC/tzNLAA/TtwFAA/saFolB/TM
--------------------------------------------------------------------~->
Yahoo! Groups Links
<*> To visit your group on the web, go to:
http://groups.yahoo.com/group/AspNetAnyQuestionIsOk/
<*> To unsubscribe from this group, send an email to:
[EMAIL PROTECTED]
<*> Your use of Yahoo! Groups is subject to:
http://docs.yahoo.com/info/terms/