 |
| General .NET For general discussion of MICROSOFT .NET topics that don't fall within any of the other .NET forum subcategories or .NET language forums.  If your question is specific to a language (C# or Visual Basic) or type of application (Windows Forms or ASP.Net) try an applicable forum category.
** PLEASE BE SPECIFIC WITH YOUR QUESTION **
When posting here, provide details regarding the Microsoft .NET language you are using and/or what type of application (Windows/Web Forms, etc) you are working in, if applicable to the question. This will help others answer the question without having to ask. |
Welcome to the p2p.wrox.com Forums.
You are currently viewing the General .NET section of the Wrox Programmer to Programmer discussions. This is a community of software programmers and website developers including Wrox book authors and readers. New member registration was closed in 2019. New posts were shut off and the site was archived into this static format as of October 1, 2020. If you require technical support for a Wrox book please contact http://hub.wiley.com
|
|
|
|

June 20th, 2005, 04:46 AM
|
|
Authorized User
|
|
Join Date: Nov 2004
Posts: 52
Thanks: 0
Thanked 0 Times in 0 Posts
|
|
page take time to load after adding rows in table
Hi all
I have created one html table run at server dynamically by adding rows one by one, my problem is if I add 400-500 rows in this table, it doesn;t take time in adding rows, but after adding it takes time to show page (it shows blank screen some times and thes show page), I am not getting how I can improve that.
Thanks
Avanish
__________________
Avanish Pandey
Set your heart upon your work, but never on its reward
|
|

June 20th, 2005, 08:10 AM
|
 |
Friend of Wrox
|
|
Join Date: Aug 2003
Posts: 5,407
Thanks: 0
Thanked 16 Times in 16 Posts
|
|
Usually the time consumed by the actual program is minimal compared to the time it takes to transfer the HTML from the server to the browser. The only way to speed up this process is to reduce the amount of HTML by reducing the number of rows (can you use paging) or by streamlining what you do send (investigate what's getting into viewstate, it could be unnecessarily large). If you can't reduce the HTML you have to live with the delay.
- Peter
|
|

June 20th, 2005, 09:54 AM
|
|
Authorized User
|
|
Join Date: Nov 2004
Posts: 52
Thanks: 0
Thanked 0 Times in 0 Posts
|
|
Hi Peter
Thanks for reply.
I can;t reduce HTML, and paging is not possible bcos this data if for single page.
Also I had created a xml string for whole and tried to show it with xslt, but I didn;t found any performance improvement.
Avanish
|
|

June 20th, 2005, 12:11 PM
|
 |
Wrox Author
|
|
Join Date: Jun 2003
Posts: 17,089
Thanks: 80
Thanked 1,576 Times in 1,552 Posts
|
|
Can you show us your code?
There might be ways to optimize things, although I agree with Peter that paging and reducing the Html is probably the best way to speed things up....
Imar
---------------------------------------
Imar Spaanjaars
Everyone is unique, except for me.
|
|

June 21st, 2005, 10:10 AM
|
|
Authorized User
|
|
Join Date: Nov 2004
Posts: 52
Thanks: 0
Thanked 0 Times in 0 Posts
|
|
My code has nothing special, just getting data from different tables of dataset, get row one by one from one table and do some check and show it on html table:
Dim script As String
script = "<Script language='javascript'>mypage=window.open('waiting. htm','newwin','toolbar=no, height=150, width=250');</script>"
RegisterClientScriptBlock("KEY", script)
' Response.Flush()
Dim tr As New HtmlTableRow
Dim td As New HtmlTableCell
td.BgColor = "#f4f9fe"
td.ColSpan = 2
tr.Cells.Add(td)
Dim dsLocation As New DataSet
If MemFilter.FilterLocation = "" Then
dsLocation.ReadXml(Server.MapPath("xmldata/location.xml"))
Else
Dim dtLocation As New DataTable
Dim dtColumn As New DataColumn
dtColumn.ColumnName = "Location"
dtLocation.Columns.Add(dtColumn)
Dim DrLocation As DataRow = dtLocation.NewRow()
DrLocation.Item(0) = MemFilter.FilterLocation
dtLocation.Rows.Add(DrLocation)
dsLocation.Tables.Add(dtLocation)
End If
Dim dsGroup As New DataSet
If MemFilter.FilterGroup = "" Then
dsGroup.ReadXml(Server.MapPath("xmldata/Groups.xml"))
Else
Dim dtGroup As New DataTable
Dim dtColumn As New DataColumn
dtColumn.ColumnName = "Group"
dtGroup.Columns.Add(dtColumn)
Dim DrGroup As DataRow = dtGroup.NewRow()
DrGroup.Item(0) = MemFilter.FilterGroup
dtGroup.Rows.Add(DrGroup)
dsGroup.Tables.Add(dtGroup)
End If
Dim j As Integer
Dim LocationCount As Integer = dsLocation.Tables(0).Rows.Count
Dim GroupsCount As Integer = dsGroup.Tables(0).Rows.Count
For j = 0 To LocationCount - 1
AddTableCell(tr, "<b>" + dsLocation.Tables(0).Rows(j).Item(0) + "</b>", "Center", "#6487dc", 6)
Next
ReportTable.Rows.Add(tr)
Dim oConn As SqlClient.SqlConnection = OpenDataConnection()
Dim dsReportData As DataSet = GetDataSet("GetSurveyStatisticsDataForDetailReport '" & Survey_ID & "','" & MemFilter.FilterLocation & "','" & MemFilter.FilterGroup & "','" & MemFilter.FilterStartDate & "','" & MemFilter.FilterEndDate & "','" & MemFilter.FilterMemType1 & "','" & MemFilter.FilterMemType2 & "'", oConn)
If Not IsNothing(dsReportData) Then
If dsReportData.Tables(0).Rows.Count > 0 Then
For j = 0 To dsReportData.Tables(0).Rows.Count - 1
Dim trMat As New HtmlTableRow
trMat.BgColor = "#c7d8fa"
AddTableCell(trMat, "<b>" & GetSectionName(Survey_ID, dsReportData.Tables(0).Rows(j).Item(0), oConn) & "</b>", "#0148b2")
AddTableCell(trMat, "Group")
Dim k As Integer
For k = 0 To LocationCount - 1
AddTableCell(trMat, "Total")
AddTableCell(trMat, "1")
AddTableCell(trMat, "2")
AddTableCell(trMat, "3")
AddTableCell(trMat, "4")
AddTableCell(trMat, "5")
Next
ReportTable.Rows.Add(trMat)
Dim icount As Integer
Dim drows As DataRow() = dsReportData.Tables(1).Select("Question_ID=" & dsReportData.Tables(0).Rows(j).Item(0))
Dim dcols As DataRow() = dsReportData.Tables(3).Select("Question_ID=" & dsReportData.Tables(0).Rows(j).Item(0))
For icount = 0 To drows.Length - 1
trMat = New HtmlTableRow
trMat.BgColor = "#f4f9fe"
AddTableCell(trMat, drows(icount).Item(1), GroupsCount, 1)
Dim GCounter As Integer
Dim ColScoreTotal(LocationCount) As Integer
Dim ColPossibleTotal(LocationCount) As Integer
For GCounter = 0 To GroupsCount - 1
If GCounter <> 0 Then
trMat = New HtmlTableRow
trMat.BgColor = "#f4f9fe"
End If
AddTableCell(trMat, dsGroup.Tables(0).Rows(GCounter).Item(0))
Dim LCounter As Integer
Dim ScoreTotal As Integer = 0
Dim PossibleTotal As Integer = 0
For LCounter = 0 To LocationCount - 1
Dim ColCount As Integer
Dim ColArr As New ArrayList(dcols.Length)
Dim Total As Integer = 0
For ColCount = 0 To dcols.Length - 1
Dim ScoreRows As DataRow() = dsReportData.Tables(2).Select("rowid=" & drows(icount).Item(0) & " and columnid=" & dcols(ColCount).Item(0) & " and Company_name='" & dsGroup.Tables(0).Rows(GCounter).Item(0) & "' and Location='" & dsLocation.Tables(0).Rows(LCounter).Item(0) & "'", "columnid")
If ScoreRows.Length > 0 Then
ColArr.Add(ScoreRows(0).Item(0))
Total += ScoreRows(0).Item(0)
'AddTableCell(trMat, ScoreRows(0).Item(0))
Else
ColArr.Add("0")
' AddTableCell(trMat, "0")
End If
Next
AddTableCell(trMat, Total)
For ColCount = 0 To dcols.Length - 1
AddTableCell(trMat, ColArr(ColCount))
Next
ReportTable.Rows.Add(trMat)
Next
Next
Next
End If
End If
script = "<script language='javascript'>mypage.close();</script>"
RegisterStartupScript("mykey", script)
|
|

June 21st, 2005, 02:32 PM
|
 |
Wrox Author
|
|
Join Date: Jun 2003
Posts: 17,089
Thanks: 80
Thanked 1,576 Times in 1,552 Posts
|
|
Why are you manually creating the layout for the data?
Can't you use one of the .NET data controls and use databinding instead?
That might speed things up...
Imar
---------------------------------------
Imar Spaanjaars
Everyone is unique, except for me.
|
|
 |