Why is the Repeater Control Uploads...
-
Good Day All i have a repeater control that i bind with 10 000 records and it handles it nicely and its defined like this
ID
Recipient
Possible Bank
Amount
<%# Eval("DONATIONS\_ID") %> <%# Eval("Name") %> <%# Eval("LU\_BANKS\_NAME") %>
R <%#string.Format("{0:n}",Eval("AMOUNT")).Replace(".00","") %>
When the Button Donate is clicked it fires the OnItemCommand event that is defined like this
protected void rptDonationList_ItemCommand(object source, RepeaterCommandEventArgs e)
{
if (e.CommandName == "Donate")
{
string[] data = e.CommandArgument.ToString().Split('|');
Session["PaymentAmount"] = data[0];
Session["PaymentforUserId"] = data[1];
Session["DonationId"] = data[2];
Session["RemainingDonationAmount"] = data[3]; -
Good Day All i have a repeater control that i bind with 10 000 records and it handles it nicely and its defined like this
ID
Recipient
Possible Bank
Amount
<%# Eval("DONATIONS\_ID") %> <%# Eval("Name") %> <%# Eval("LU\_BANKS\_NAME") %>
R <%#string.Format("{0:n}",Eval("AMOUNT")).Replace(".00","") %>
When the Button Donate is clicked it fires the OnItemCommand event that is defined like this
protected void rptDonationList_ItemCommand(object source, RepeaterCommandEventArgs e)
{
if (e.CommandName == "Donate")
{
string[] data = e.CommandArgument.ToString().Split('|');
Session["PaymentAmount"] = data[0];
Session["PaymentforUserId"] = data[1];
Session["DonationId"] = data[2];
Session["RemainingDonationAmount"] = data[3];10,000 records on one page?! Do you seriously think anyone is going to look through that many records to find the one they want? :wtf: If a user can look at and discard one record every second, it would take them almost three hours to look through your list. And that's assuming they don't make a mistake, miss the record they're looking for, and have to start again. Also, since you're using WebForms, you're going to have an enormous
ViewState
, which is almost certainly why your page takes so long to load and to post back. Split the data into pages of a reasonable size, and give the user tools to filter the list to find the record they want.
"These people looked deep within my soul and assigned me a number based on the order in which I joined." - Homer
-
10,000 records on one page?! Do you seriously think anyone is going to look through that many records to find the one they want? :wtf: If a user can look at and discard one record every second, it would take them almost three hours to look through your list. And that's assuming they don't make a mistake, miss the record they're looking for, and have to start again. Also, since you're using WebForms, you're going to have an enormous
ViewState
, which is almost certainly why your page takes so long to load and to post back. Split the data into pages of a reasonable size, and give the user tools to filter the list to find the record they want.
"These people looked deep within my soul and assigned me a number based on the order in which I joined." - Homer
Hi Richard Thanks for your reply. There is paging on the repeater and there is no perfomance issue on the repeater. The only thing that im asking is why does it say "Uploading..." where else in the itemcommand im just assigning some sessions and redirecting? What i must also mention is that locally connected the online domain it has no issue.
Vuyiswa Maseko, Spoted in Daniweb-- Sorry to rant. I hate websites. They are just wierd. They don't behave like normal code. C#/VB.NET/ASP.NET/SQL7/2000/2005/2008 http://www.vimalsoft.com vuyiswa[at]vimalsoft.com
-
Good Day All i have a repeater control that i bind with 10 000 records and it handles it nicely and its defined like this
ID
Recipient
Possible Bank
Amount
<%# Eval("DONATIONS\_ID") %> <%# Eval("Name") %> <%# Eval("LU\_BANKS\_NAME") %>
R <%#string.Format("{0:n}",Eval("AMOUNT")).Replace(".00","") %>
When the Button Donate is clicked it fires the OnItemCommand event that is defined like this
protected void rptDonationList_ItemCommand(object source, RepeaterCommandEventArgs e)
{
if (e.CommandName == "Donate")
{
string[] data = e.CommandArgument.ToString().Split('|');
Session["PaymentAmount"] = data[0];
Session["PaymentforUserId"] = data[1];
Session["DonationId"] = data[2];
Session["RemainingDonationAmount"] = data[3];1. Does the 'upload' happening before, or after the event raised? I think you do not hit the server side until the 'upload' is at 100%, so it somehow related to the postback... 2. Put a sniffer (Fiddler like) to see what actually passing on the lines... 3. how large the ViewState is? 4. It is browser specific? What browser?
Skipper: We'll fix it. Alex: Fix it? How you gonna fix this? Skipper: Grit, spit and a whole lotta duct tape.
-
1. Does the 'upload' happening before, or after the event raised? I think you do not hit the server side until the 'upload' is at 100%, so it somehow related to the postback... 2. Put a sniffer (Fiddler like) to see what actually passing on the lines... 3. how large the ViewState is? 4. It is browser specific? What browser?
Skipper: We'll fix it. Alex: Fix it? How you gonna fix this? Skipper: Grit, spit and a whole lotta duct tape.
The Problem has been resolved. This is a good lesson. The problem was that my web application was running in an https IIS server in which my application was using Bootstrap that has fonts which was outside my server with a http not https control. i removed and copied all the files to the local server. So it looked like the system was slow but it was not , there was no error it was just blocking the user from moving forward. i hope this helps someone else
Vuyiswa Maseko, Spoted in Daniweb-- Sorry to rant. I hate websites. They are just wierd. They don't behave like normal code. C#/VB.NET/ASP.NET/SQL7/2000/2005/2008 http://www.vimalsoft.com vuyiswa[at]vimalsoft.com
-
The Problem has been resolved. This is a good lesson. The problem was that my web application was running in an https IIS server in which my application was using Bootstrap that has fonts which was outside my server with a http not https control. i removed and copied all the files to the local server. So it looked like the system was slow but it was not , there was no error it was just blocking the user from moving forward. i hope this helps someone else
Vuyiswa Maseko, Spoted in Daniweb-- Sorry to rant. I hate websites. They are just wierd. They don't behave like normal code. C#/VB.NET/ASP.NET/SQL7/2000/2005/2008 http://www.vimalsoft.com vuyiswa[at]vimalsoft.com
Are you saying that mixed content (http/https) was blocking the pages? Browser should have to show a warning about that... In any case the solution is to create protocol-less links (using cdn is a good thing and in most cases better than local copy)...
Skipper: We'll fix it. Alex: Fix it? How you gonna fix this? Skipper: Grit, spit and a whole lotta duct tape.
-
Are you saying that mixed content (http/https) was blocking the pages? Browser should have to show a warning about that... In any case the solution is to create protocol-less links (using cdn is a good thing and in most cases better than local copy)...
Skipper: We'll fix it. Alex: Fix it? How you gonna fix this? Skipper: Grit, spit and a whole lotta duct tape.
Yes i was even shocked when i saw this. The thing the page itself does not timeout or give an error the chrome developer toolbar showed me that the page is blocked due to the mixed content. After moving them locally it started moving like lightning fast.
Vuyiswa Maseko, Spoted in Daniweb-- Sorry to rant. I hate websites. They are just wierd. They don't behave like normal code. C#/VB.NET/ASP.NET/SQL7/2000/2005/2008 http://www.vimalsoft.com vuyiswa[at]vimalsoft.com