C# - Dictionary Lookup Efficiency & Request Scoped Global Variable Accessible By Global.asax And Pages/etc?
Feb 8, 2011
I know there is a couple answered questions on here regarding "request scoped" globals, but I want to nit-pick on something specifically and maybe squeeze some extra enlightenment out of one or two of you.I have an ASP.NET C# Website and a static Dictionary of objects (loaded from DB once on Application start). Each page request will need to do a lookup in the Dictionary (based on a key derived from the request url/etc) and get the appropriate object.The issue is I'm trying to maximize efficiency by reducing the lookups to the Dictionary per Request. Doing just a single lookup within a Page itself is easy enough and I can pass the object to sub controls, etc too.. but global.asax is separate from the Page and it also needs to use the object (in Application_BeginRequest and Session_Start).
So is doing a Dictionary lookup once in Application_BeginRequest, once (when necessary) in Session_Start and once in the Page negligible speed wise, even if there are many requests coming in every second?I would like it if I could just have a Request scoped global variable that I can easily call upon.. the only one I see available though is HttpContext.Current.Items and that is a Dictionary itself.Am I beingridiculously nit-picky with my concern over efficiency? or will these milliseconds (nanoseconds?) get me in the long run when more and more requests are being made?
PS. I currently only have around 100 objects in the Dictionary although this may increase in the future.
View 2 Replies
Similar Messages:
Nov 18, 2010
I've created a new class in App_Code
namespace Site {
public class MyClass {
public MyClass() {
}
}
}
this is my Global.asax.cs
[code]....
The error is in: MyClass myClass = new MyClass();
The type or namespace name 'MyClass' could not be found (are you missing a using directive or an assembly reference?)
View 1 Replies
Jan 9, 2014
it's possible to declear global variable in asp.net C#.
View 1 Replies
Apr 27, 2010
I have a ASP.NET/C# web application. There is an object instantiated in the Global.asax that I'll call g_objVariable. What I would like to do is reference one of it's properties in the ASP.NET page itself, like this.
The g_objVariable's Prop1 value is: <%=AppNameSpace.Global.g_objVariable.Prop1.ToString()%>
I get it to see the reference, but it keeps telling me that due to it's protection level I can't access it. I have it set to 'internal static'. What would be the least level I could set it to, but still allow the page to access it?
View 3 Replies
Mar 26, 2010
I'm getting a very peculiar problem with my asp.net application, it took me an age to track down but I still don't know what is causing this behaviour.
If I set a session variable in the Application_PreRequestHandlerExecute event, then my external JavaScript files are ignored, and therfore causing a raft of errors. I have simplified the problem below.
E.g.
I have file called JScript.js containing the code:
function myAlert() {
alert("Hi World");
}
And in my Default.aspx file I reference the js with the code:
<script src="JScript.js" type="text/javascript"></script>
And in the body onload event I call the myAlert() function:
<body onload="myAlert()">
And finally in the Global.asax file:
Private Sub Application_PreRequestHandlerExecute(ByVal sender As Object, ByVal e As EventArgs)
HttpContext.Current.Session("myVar") = "MyValue"
End Sub
If you run the Default.aspx file you will see the js function isnt called, however, if you comment out the line of code Global.asax then the external js is called and the function executed when the page loads.
View 1 Replies
Mar 10, 2011
I am have declared a session variable in login page of my application. I want to access that session variable in Application_BeginRequest of global.asax file. But I am not able to do it. Could you please suggest how to access the session variable in my global.asax file
void Application_BeginRequest(Object sender, EventArgs args)
{
string language = HttpContext.Current.Application["language"].ToString();
}
View 2 Replies
Feb 13, 2011
i declared a static variable in global.asax file like below
<%@ Application Language="C#" %>
<script runat="server">
static string Sv;
void Application_Start(object sender, EventArgs e)
{
// Code that runs on application startup
}
i want to access this variable in aspx page. how can i access this variable.
View 2 Replies
Apr 2, 2010
I am doing some redirecting of old url in global.asax's application_beginrequest. Redirecting works fine when getting the url's using an http get but not when using an http head request.
View 4 Replies
Jun 16, 2015
how to declare global variable in master page and use it in all pages
View 1 Replies
Sep 14, 2010
I added the following code to global.asax to load up several session variable when a session starts. I'm assuming that when a page goes to use the variable that I should be
1) checking at the page level that the value is valid not 0 when its not expected to be 0, not a zero-length string when its expected to have a length
2) have code at the page level that sets the values if the values have not been set as when the Session timeout, ideally putting the code in a class derived from Page and then deriving all of my pages from the new class so that the code does not have to be repeated in every page
[Code]....
View 7 Replies
Feb 26, 2010
how can we use global.asax in asp.net? and what is that?
View 4 Replies
Jun 20, 2010
Is it possible in the global.asax file on session_start to check if a url string exists and it it does insert the string into a sql database? The url would be something link http://www.mysite.com?campaign=january.
I would want to capture the january bit and put that in the database for each visitor that uses that url.
View 3 Replies
Jan 27, 2010
I want to make All Methods about Error handling in asp.net some one device me at using global.asax what is global.asax?
how can i use it ?
View 1 Replies
May 12, 2010
I have a hosting account on DailyRazor.com , i use Global.asax in my project to start a schedule process in Application_Start.When i just publish my website, and upload it, the Application_Start does not Fire, but when i upload the Global.asax to my host it gives an Error but the Applicaiton_Start Event fires up, and then i delete the Global.asax file and everything works.just wondering, What am doing wrong ? or why this meaningless thing happens?
View 2 Replies
Nov 4, 2010
I have a site with multiple domains pointing to it. I wanted to redirect all requests to main domain so I've created a method called RedirectToRealDomain("domain.com") to check and redirect all requests to my preferred domainAt the moment it lives on Session_Start but I am planing to move it to Application_BeginRequest event. As I understand Session_Start only raised when new session started but Application_BeginRequest raised on all requests. RedirectToRealDomain method doesn't do any DB lookups or anything expensive apart from comparing strings.
View 2 Replies
May 21, 2010
I want to set the Masterpage property in Global.asax.
This is what I have done but I get a NullReferenceException on the first line.
protected void Application_PreSendRequestContent(Object sender, EventArgs e)
{
System.Web.UI.Page page = System.Web.HttpContext.Current.Handler as System.Web.UI.Page;
if (Session["lang"] == "eng")
{
page.MasterPageFile = "SideMasterPageEng.master";
}
}
View 1 Replies
Jun 29, 2010
I am trying to check if the user belongs to someone's friendlist from the database and redirect him accordingly.I am doing this in a routehandler called by Global Asax.I just want to know how to get the username (from the login information) in the route handler class (or Global asax)I used this: string username = HttpContext.Current.User.Identity.Name; and very strangely, its assigning ".aspx" as the username!! ps: i did search for similar question but in vain.
View 1 Replies
Oct 19, 2010
I need replace double slashes in one slash. I am planning do this in Global.asax Application_BeginRequest event. Is it enough? or better do a http module?
UPD
Sub Application_BeginRequest(ByVal sender As Object, ByVal e As EventArgs)
' Fires at the beginning of each request
[code]...
View 1 Replies
Feb 8, 2010
I was under the impression till now that Global.asax is used for application level events and it's a common file for all users. Then what does Session_Start event does in this file. If we have to create user session varaibles then Is this the write place to create those? If someone can kindly clear my confusion on this file and it's methods.
View 5 Replies
Oct 8, 2010
I'm trying to handle all my application exceptions inside the global.asax but from some reason it's not firing at all, i never tried to do it before so i guess i'm doing something wrong here...
here is the code inside the default.aspx page that throw the error:
[Code]....
View 6 Replies
Apr 19, 2010
I'm using the HttpRunTime.Cache.Add to create a routine that runs every 5 mins to post data out of my app to the main DB, and this works fine. However I also need to import some files from disk in this routine. I have my document directory set up in my web.config as a ~/ relative path and resolve this in normal controller actions using Server.MapPath(string). How can I do this in my Global.asax.cs code -when I try to access it, it throws an error?
View 3 Replies
Dec 29, 2010
I have a custom error handler in the global.asax's Application_Error method, when an error occurs I use the following code to transfer user to the error page:Server.Transfer("/Error/");
However without specifying the actual page name the code above breaks with "Error executing child request for /Error/" exception.So if I use Server.Transfer("/Error/Default.aspx") it works fine with no problems.Also using Response.Redirect("/Error/") works fine too, however we want to keep using Server.Transfer to retain URL displayed in the address bar when the error page is displayed so users can simply refresh the page to retry accessing the original offending URL.Would be grateful if anyone can comment on how to get the Server.Transfer method working without specifying the actual aspx page name.
View 1 Replies
Aug 26, 2010
I've got an website running on a third-party hosting server. Now I've got a few objects in global asax. But once in like 6 hours or so (didn't really check how long) the object gets reset to default values.Is this an problem in global asax that it reset's himself or is this the server on which I'm hosting?
View 3 Replies
Mar 16, 2011
we have a store that we contracted with a company to modify. They added the following to our Global.asax file:
[code]...
The purpose is to take anyone going to one of our pages to a login screen unless they are going to these folders which do not need the login protection.
I now need to let them go to [URL]
View 3 Replies
May 19, 2010
The purpose of the code associated with the Global.asax is to hold functionality to respond to various application-level events.
But why is there a markup file associated with the Global.asax.cs? I presume this is an ASP.NET implementation side effect?
View 1 Replies