Configuration :: Slow Load Time After Updating Class In App_Code?
Dec 20, 2010
We have an asp.net website running on IIS 6 Windows 2003. When ever we upload a class file to the App_Code folder our whole site goes down temporarily until, what I assume, compilation is complete. Has anyone else experienced this? Any other file we upload it does not do this only our class files.
I have some problem in app_code. I created one class name as class1 in side app_code.... Now I have a grid view with lots of textboxes inside it(itemtemplete). I call class1 to fill the all the values in my database with get set properties..... it working awesome on local. but problem is that after published it is not working.... I mean class1 is not called after publishing.... And app_code folder also not appearing at published folder.
I have created a simple ASP.NET Website in Visual Studio 2008. I have a static C# class (lets call it someClass) contained in a separate file in the App_Code folder. I call a method from that class in my page's code behind like so:
someVar = someClass.someMethod(someParam);
This compiles correctly in VS 2008 but when I move it over to my IIS server, I get the following error (CS0103): Description: An error occurred during the compilation of a resource required to service this request. Please review the following specific error details and modify your source code appropriately. Compiler Error Message: CS0103: The name 'someClass' does not exist in the current context I have created a virtual directory for this website enabling 'Read', 'Run scripts (such ASP)', and 'Execute (such as ISAPI applications or CGI)'. I am not currently utilizing namespaces (as I thought I would not need to and I'm not sure how to use them properly). What am I doing wrong?
When we include Javascript files in our aspx files. either we write all the Javascript code in the Head section of aspx or we link to an external Javascript file.
So when the clinet makes a call to that page. Does that mean that all the Javascript will be loaded on the client side?
If that is the case then does not that mean that it will slow down the loading of page as all the Javascript has to be loaded on the client machine?
The first time that my page loads (this is after it has been deployed), it is terribly slow.
My guess is that it is still compiling dynamically, and not precompiling.When I publish through VS2008 I have "Allow this precompiled site to be updatable" unchecked and "Use fixed naming and single page assemblies" checked.Could I be missing something in my web.config file?
I can post the URL of the site if you would like to view it, but it takes 10+ seconds to load upon first visiting, and then less than 1 second to navigate the site.
I have a simple web application that loads very slow the very first time after i deploy it. I am using ASP.NET 3.5 SP1 / VS 2008 / Linq / Web forms to load the default.aspx home page. It is a very light page with nothing too fancy.Now to debug this load issue, I logged all the events in the global file and got the following log text:
Now my question is, between the Application_AuthenticateRequest and Session_Start functions, there is generally around 10 - 15 seconds - which i believe seems to be the problem.The thing, I am unsure why this is slow between these two functions.I am not using any forms authentication.Also, I am not doing anything fancy in the global file besides setting a session variable.
I have a MasterPage project which is a class library project (it includes themes, style sheets, menus etc) and all applications use them.
I am using the BasePage concept for dynamically adding title,meta tags and descriptions. This BasePage Class inherits system.UI.Page and the aspx pages in the project inherits the BasePage class.
Now i need to move this BasePage class from my application to the Master Page Project so that all the projects/applications can reuse the same code.
I tried add the basepage.cs in the App_code folder and tried calling it in the page directive like below
<%@ Page Language="C#" MasterPageFile="~/Master/Layout/MasterPage.master" AutoEventWireup="true" CodeBehind="xxxx.aspx.cs" CodeFile="xxxx.aspx.cs" Inherits="xxxx" ValidateRequest="false" EnableEventValidation="false" ViewStateEncryptionMode="Never" CodeFileBaseClass="~/Master/App_Code/BasePage<Page>" Title="Title" Meta_Keywords="xxxx,yyyy,zzzz" Meta_Description="This is a test" %>
But i am getting error
Could not load type '~/Master/App_Code/BasePage<Page>'.
This was working fine till the BasePage class was inside the application. But once i moved it out of the project and added it to the master page project i getting this error.
Over the last week I've been investigating an issue for one of our clients whereby the initial page load following a deployment of their website takes around 1 minute, resulting in unacceptable downtime for end users. This was happening not only for code deplyments (bin dll's and .config files) but also if there were large numbers of .aspx pages updated. For code deployments it's not an issue, but for aspx updates it is; in this particular scenario, we are making use of a 3rd party content management system (RedDot from OpenText) in which every page of the site is published out as a distinct .aspx page. This means that for this website there's somewhere in the region of 2,400 separate .aspx pages. I realise this isn't an ideal situation but we're working within the constraints of the CMS, and we managed to correlate the instances where the site was unresponsive with App pool restarts, which also corresponded to publications of of .aspx pages.
I found an article by Tess Ferandez [URL] which describes all the reasons why the app pool may restart, and it does seem that if more than 15 .aspx pages are changed then the app pool will recycle and the pages will be re-compiled. Another msdn article [URL] then gave me a few pointers on how to start addressing this problem, and for the moment I've set a flag on the compilation options to prevent batch compilation:
<compilation batch="false">
This means that the initial page load now takes around 6 seconds instead of 1 minute, which is a great improvement. However, I also used the "Compilations Total" performance counter to investigate the number of pages that have been compiled by ASP.NET for my site and was quite surprised that the total number of pages that get compiled peaks at 44, which is odd given that there are 2,400 aspx pages in the site. If the batch flag is set to false, the counter slowly increments by 1 page at a time as you click around on the site; if batch mode is true, the initial compilation takes the number straight to 44 over the course of ~60 seconds. What I'm really struggling to understand is why all 2,400 pages aren't compiled. Does anyone have any inside info on what might be going on as all the documentation I've read seems to indicate that all of the pages should be compiled and this counter should be much higher.
I have some code I only want to execute the first time I display a form. With this in mind I created a class variable which I initialize the first time I execute page load.
public partial class CLVideoDefinition : System.Web.UI.Page { string videofile; string first; protected void Page_Load(object sender, EventArgs e) { if (first != "N") {
I then select a value from a drop down list , but when it does the auto postback it executes page load but my class varaible has been reinitialized to null and will then execute the code I only want to execute on the first run. why my class variable has been reinitialized.
i developed a website already and it was hosted in live too. My Problem is , site take a very long time to load , it take nearly 30-60 seconds to open , once it opened then it is some what better, MY Url Ishttp:\shoesrus.msinternational.bizplease verify and give me a solution , is their is any setting changes has to be taken in iis or server side etc..
I have developed a web application in .net & if the web application is idle for some time & after that if we perform some action on that web page then it doesn't respond.
I've developed a class and it is put in a .cs file under the app_code folder. The class is a public one and there is no namespace specifically defined for this class in the file.of my webpages uses this class. It works ok on my local machine. However after I uploaded the page to the web server and then try to display the page through internet, the sever told me the class name can not be found.
If a static class is put in App_Code, does that imply only one instance will be created, shared by different http requests?Or each request still brings one request?
I have a logging class that, well, logs things. I would like to add the ability to automatically have the current page be logged with the messages. Is there a way to get the information I'm looking for?
I am using VS2010 and am creating an ASP.Net application.I have declared a class called "Calculator" in a class file called "Calculator.cs" in the App_Code folder.I have a form called "CalcDemo.aspx" with a code behind file. I try and use the "Calculator" class but intellisense can't see it. I thought App_Code is the common code repository for any classes I define and should be visible to all ASPX code behind files The namespaces are the same like Webapp1.xxxx
While working on my FTP server, I am trying to access a class within my App_Code, but it is not working.When writing, the class is accessible/usable in the code like shown in picture. I get no build errors.But when I run it in the browser, I get an error stating that it cannot find my class.I've looked around some other posts on the forum, like using namespace, but it didn't work.
I'm trying to set up a smart way to handle email in my ASP.NET Web Application Project. I created a class in my App_Code folder named "MailHelper.cs" but am having trouble invoking it in the code-behind pages. Can someone please correct me on the correct way to do this?Here's the Mail.Helper.cs file in App_Code:
[Code]....
How do I invoke this when I'm ready to fire off a message? Let's say I have a Submit_Click event and want an email to be generated:
this is relatively simple, but how would i go about retrieving the windows login name from the class file in the App_Code folder. I have set up my website to run windows authentication, and can use httpcontext to get windows login name from code beihind, but without passing this to the class everytime, is it possible to get the login name from within the class?
Since App_Code doenst exist as an ASP.NET Folder, I manually added App_Code as a regular folder, then within that I placed technologydescriptor.cs. Although it now has the appearance of an ASP.NET Folder.But for some reason my code doesnt recognize this class if its w/in the App_Code folder. This is picked up if it is not within that folder- why?Error: "The type or namespace name could not be found, are you missing a using directive or assembly reference"
I have a PlannerShiftView user control in the root folder of my ASP.NET web site. In my App_Code folder, I have a ShiftViewTemplate class that needs to instantiate a PlannerShiftView (for a TemplateField in a GridView). The problem is, the following code doesn't compile because the PlannerShiftView type is not available in what I deem to be the App_Code 'phantom namespace'.
Please can somebody explain to be what is happening here, as well as what to do. I know I can just move the ShiftViewTemplate out of App_Code, going against convention and without explantion, but that is something of a hollow victory.
I guess I might be missing something easy (or not) here. I have a class in App_Code which do some validations over Session and Request.Url, till here it's working fine. But then I need to get the actual page title. I know it's simple to get it in the page's code behind, but could I get it in a separate class like it is on my scenario?