AJAX :: ScriptResource.axd Is Being Invoked Several Times Per Each Aspx Page Request
Apr 1, 2010
I use ASP.NET Ajax in my web site and I am monitoring the HTTP requests per each page. I am surprised by the excessive call of ScriptResource.axd with different query string variables. I am pasting a sample of HTTP trace below. The call for ScriptResource.axd take lots time percentage out of total response time. Is this by design or there is something wrong with my AJAX configuration in web.config?
[Code]....
Actually it is degrading the performance of the application. And the user experience becoming very poor in case of lower bandwidth.
My basic structure is that I have a table on a page, which I want to reload without refreshing the entire page. So on clicking a button on the page it fires of this:
function RefreshMissionsAjax() { //fade out the old table. $(clientID('MissionsDisplay')).fadeOut(500); //request the new value from the page (calls the GetIncompleteMissions() method in the MissionViewer.aspx.cs page) $.ajax({ type: "POST", url: "MissionViewer.aspx/GetIncompleteMissions", data: "{}", contentType: "application/json; charset=utf-8", dataType: "json", success: function (msg) { $(clientID('MissionsDisplay')).html(msg.d); $(clientID('MissionsDisplay')).fadeIn(500); }, error: function (xhr, ajaxOptions, thrownError) { $(clientID('MissionsDisplay')).html('An error occured while trying to refresh the page data.'); $(clientID('MissionsDisplay')).fadeIn(500); } }); } And I have in the code bedind of an aspx page: [WebMethod] public static string GetIncompleteMissions() { return GetHTMLTable(); }
This method just grabs some data, and creates a html table - nothing too fancy. When the returned table is small (a dozen rows or less) then it works like a charm. But when it gets larger, it takes a long long time. At 100 rows it can take 5 minutes to render the table. At 1000 rows I have left it for 30 minutes and nothing will happen after the fadeout. (NB - it loads fairly quickly on the pageload, before the ajax refresh is used, so it is not the actual server side creation of the table thats the problem).
This is my first real attempt at doing something like this, so I dont know if this is the best way to do it - it was just something i pieced together that worked great when i was testing with small datasets. Now, not so much.
I have a very peculiar problem that I've been wrapping my head around and I just can't figure it out. I have an updatepanel. Inside that I have a TabContainer. And inside that I have three TabPanels, each of which has checkboxes. Sometimes (and it happens often enough that I can easily reproduce it, but strangely may not happen with the same exact steps), when I click on different tabs or click on checkboxes inside the tabpanels (basically when I do an AJAX async postback), the request takes about a few minutes, after which the request just stops. Looking at the Firefox error console, I see this popping up after a few minutes...
Sys.WebForms.PageRequestManagerServerErrorException: An unknown error occurred while processing the request on the server. The status code returned from the server was: 0 Now, the asyncpostbacktimeout property for the ToolkitScriptManager is set at 360000, which is 6000 minutes, so the problem has nothing to do with that setting. In IE, I never have this problem and the AJAX requests are instantaneous and smooth, no delays. So this isn't a network or database lag issue. Something to do with how AJAX is run in Firefox. Why is it that sometimes, an AJAX request in Firefox takes a few minutes and just stops processing the request? And once again, the steps to reproduce this problem may not be the same every time, it seems random - very strange. Google searches have yielded very little help on this. I've tried things like extending the timeout property (which again has nothing to do with this), setting Response.Cache.SetNoStore() everywhere. Is there a crude workaround I can do (at this point, I'm willing to settle for a workaround). I just don't know anymore.
I have a previously working ASPX website which also supports AJAX. However, we just upgraded our SQL Server from 2008 Evaluation to 2008 R2 version 10.50.16 and now this website is no longer working. I believe the problem is that now we need to again restore original SQL accounts and settings prior to this upgrade. This website also uses AJAX. Which accounts need to be created to fix this problem? When I navigate to this URL, I get the message below:
I have 1 aspx page.In that i am using Developer Express controls also. If i do some changes in that page and trying to save, only the HTML input tags are repeating 2 times.
I have an ASPX page that I intend to use as a template to generate some HTML. I have defined my markup and data bound controls and built a function to do all the data binding, call this.Render and return the HTML. The function works just fine when called from Page_Load.
My intent was to bypass page request and directly call the method and get the page HTML, but when I call the function without making a HTTP Request, none of my server side controls are initialized.
Is there any way I can call a method on a page, pass some params and get the HTML output without making a HTTP Request. I believe Server.Execute could do it but i cant find a way to pass params in it.
I am calling the function like this
MyPage ThreadHTMLGenerator = new MyPage; string threadHTML= ThreadHTMLGenerator.GenerateExpandedHTML(param1, param2, param3);
it is possible to do a request for another page on internet from page_load? I mean if it is possible to aquire markup code with informations from another page and display them on my aspx site? For example something like this:
Is there a way to test sending an XML file as a request to my ASP.Net web page within Visual Studio 2008? k, no one has answered this in a helpful way. I have a situation where I have an ASPX page that I send an XML file too and receive an XML response from. In order to debug this, I need to step into the page while providing an XML request. I This is what I need to figure out how to do?
I have defined a Shared Function in the code behind and a javascript function to call the webmethod. Also, I have EnablePageMethogs set to true in ScriptManager.
A class in my ASP.NET website needs to access a database table multiple times for every request. The database table should rarely change, if ever. Maybe a couple times a month.
In the static constructor of the class, the table is fetched from the DB and cached in a static local variable. Whenever the class needs to access the table, then, it just uses the cached, static version.
My question concerns the lifespan of this cached, static version of the table.
I understand that it's fetched the first time the class is instantiated or a static method in the class is used. But how often does this occur on the web server? What if the table changes and we want to reset this static version of the table?
Basically, I'm wondering, is this table fetched once and then only refetched each time I restart IIS? What, with regard to the site and IIS, will trigger this static class to reset, causing the static table to be refetched?
My website is looking in the wrong place for the scriptresource.axd and webresource.axd. How do I point it at the correct subfolder? Or how do I set it so that scriptresource.axd and webresource.axd are stored in the root of the website?All the ajax is done within subfolders. The web.config is at the root of the website.
I am using slider extender in an user control. I am adding that user control 2 times in a page. At that it gives me an error saying "Two components with the same id 'Slider1' can't be added to the application."
I am using Latest Version of AjaxToolkit and VS 2008 with .NET FWK 3.5.
I have a .NET 3.5 web application that uses SQL Server for its session state store. To improve scalability I wrote a class that implements IPartitionResolver that figures out which instance of SQL Server to use for a users session. All of this works great and just as expected.
However, when I was debugging one day I set a breakpoint at the bottom of the ResolvePartition method to make sure the correct connection string was being returned. To my surprise this breakpoint was hit many (~5-10) times per request! The same is true about breakpoints in the IPartitionResolver.Initialize method.
Does anyone know why this is? It seems to me that you would only need to call these methods once per request. It's not like the users session is going to move to a different instance of SQL Server mid request.
I have setup my website (ASP.NET 3.5) with AJAX, running with no problems at all.
When I test my website locally and on my main top level domain, there are no problems.
When I'm on a subdomain page, AJAX client side framework fails to load. I observed the problem deeply and found that whenever I'm on a subdomain page, WebResource.axd DOES load but ScriptResource.axd DOESN'T load (returns 404 Not Found error). I think I should modify some entries at web.config file, but I have no idea on what to do?
In my website i have used ajax. I have made a subdomain. All the files are in the subdomain. But no ajax controls are working. When viewing source,
<script src="/subdomain/ScriptResource.axd?d=pIGD9Q63Ayfy9TvkTDZXYa7KKGxArRY0b7cvnO2ePCz6Y3RvV0egKLh8SptZV4uh0uHt-WTAswFxYQAekdl0wytwvJVYp1G-DPHL4quv6Vc1&t=633528638860312500" type="text/javascript"></script> is coming.
I have a previously working ASPX website which also supports AJAX. However, we just upgraded our SQL Server to a new version and now this website is no longer working. I believe the problem is that now we need to again restore original SQL accounts and settings prior to this upgrade. This website also uses AJAX. Which accounts need to be created to fix this problem? When I navigate to this URL, I get the message below:
I have a site that uses the Ajax Control Toolkit that's been running for several weeks and a week ago all of a sudden users are seeing script errors. I'm getting 'Sys' is undefined errors, as well as 'object required' and other JavaScript exceptions. The site does not function because of this.
I checked the page source and looked for the WebResource.axd and ScriptResource.axd's and tried navigating to them directly by putting the URL in the browser. I got a 404 error - file not found. If I do the same in our test environment, it comes back and asks me if I want to save or open the file. If I open it, I see the JavaScript that I am expecting (from the Ajax Control Toolkit).
In our test environment, with the same code, everything works fine. This tells me there was something on the production server that's preventing this from working. About 4 days before this started happening, we found that some user documentation (PDF) wasn't being protected by Forms Authentication (we need only legitmate users having access to it) so we added a wildcard mapping in IIS with "verify that file exists" was unchecked, knowing that if it were checked, we'd have this problem. I had one of the network admins check this setting after this started happenig and he said that it was still unchecked. I asked him to remove the wildcard mapping altogether and I still see the same behavior.
I am certain that this isn't a coding problem; again, as it went through the QA process in our test environment, everything works perfectly. And after the last deployment to production three weeks ago, everything was perfect as well. We added the wildcard mapping (which shouldn't have had an effect) and four days later the site breaks. I've asked our IT department if any changes were made to the server recently and nobody says they did.
What settings does anyone know of that might be causing this, either server or application? I checked the web.config and all the sections are there that deal with the ScriptResource HttpHandler and HttpModules. In fact, the web.configs are identical between the production and test environment, so I know it hasn't been tampered with.
I have page that works ok on localhost, but it throws an error on server. This pages was working ok before until I added additional grid to updatePanel. Is there any limit how many grids you can have in updatePanel. The error message is below.
Message: Sys.WebForms.PageRequestManagerServerErrorException: An unknown error occurred while processing the request on the server. The status code returned from the server was: 500 Line: 4723 Char: 21 Code: 0
We host a SaaS application on 4 windows 2008 servers loadbalancer via a LVS. We use infragistics and Ajax Control Toolkit on several pages, one page represents a list of people using a Web Datagrid, each time a person is clicked in the list, an Ultra Web Tab component is updated at the botom of the page with detailed information on that person. After a certain amount of clics on different people (number of clics can be between 1 and 5) Scriptresource.axd craches with the following error :
[Code]....
I don't get this error when I run my application on one server using the server's private IP adress. I tried to synchronize the dates of the dlls System.Web and System.Web.Extensions on each server, I still get the same error.
I'm having a problem trying to combine the ScriptResource.axd files automatically generated by Ajax using ScriptManager's CompositeScript property....on some pages there's 15 of these files, so I'd like to reduce that number to reduce the HTTP requests. I tried following the post here - [URL] - but am getting errors when trying to do what it instructs, such as:
Microsoft JScript runtime error: 'Sys' is undefined Microsoft JScript runtime error: ASP.NET Ajax client-side framework failed to load. Below is the code I am using for the ScriptManager. These errors go away if I do not use CompositeScript. Has anyone else attempted to combine these files? Am I doing something wrong in this code?
I need to invoke a long running task from an ASP.NET page, and allow the user to view the tasks progress as it executes.
In my current case I want to import data from a series of data files into a database, but this involves a fair amount of processing. I would like the user to see how far through the files the task is, and any problems encountered along the way.
Due to limited processing resources I would like to queue the requests for this service.
I have recently looked at Windows Workflow and wondered if it might offer a solution?
I am thinking of a solution that might look like:
ASP.NET AJAX page -> WCF Service -> MSMQ -> Workflow Service *or* Windows Service