Application Start In Global.asax File
May 2, 2010application start in global.asax file
View 6 Repliesapplication start in global.asax file
View 6 RepliesI am developing my application in asp.net 3.5 and sql server 2005, and I want to record the visitor info into my database, like once the visitor enter my website, I'll insert his browser details to the database. [It's not necessary that visitor login my website].
Now I am confused where to put my code, If I put insert function in every page_load then on every page it will execute and I'll not be able to get the exact number of visitor, visited my website. Shall I go with application_start in Global.asax ??
Not using Cassini, but IIS7 to run an ASP.NET app.
The debug behavior is flakey. Sometimes it works, sometimes it doesn't. I was able to step into the application start event in global.asax but sometimes I can't.
Sometimes VS2008 opens the published global.asax so I have two instances of global.asax opened in VS, the source and the published.
I reset the AppDomain and IIS and I can't put my finger on why this is happening.
To add, while it won't go into application start, I have an OnChangeEventHandler event - it does step into the event handler.
i am new in asp.net form authentication and sessions
i would like to know how to save session in masterpage or in global.asax and how to clear session.
how to better handle session timeout by redirecting to a page.
this is my web.config session settings
<sessionState mode="InProc" cookieless="false" timeout="1"></sessionState>
code in my masterpage
[code].....
My ASP.NET intranet web application uses Windows Authentication, and I would like to record the following details:
1) Windows ID
2) Session Start Time
3) Session Stop Time
4) URL being browsed to (optional)
I've got some basic code setup in "Session_Start" method of the Global.ASAX to log session start times (seen below), but that's it so far. I have the feeling this is a primitive approach and there are "better" ways of doing this. So I really have two questions:
1) Is this the right way to go about doing this? If not what are some other options?
2) If this is the right way, do I just need to drop some code in the "Session_End" method to record the time they exit, and thats a complete solution? Does this method always get called when they close the browser tab they have the site open in, or do they have to close the entire browser (I don't have logout functionality)? Any way users can skip over this session end method (or start for that case)?
Dim connsql As New System.Data.SqlClient.SqlConnection(ConfigurationManager.ConnectionStrings("MyConnectionstring").ConnectionString)
Dim cmdsql As System.Data.SqlClient.SqlCommand = connsql.CreateCommand
cmdsql.CommandText = "BeginUserSession"
cmdsql.CommandType = Data.CommandType.StoredProcedure
Try
cmdsql.Parameters.Add("@windowsid", System.Data.SqlDbType.VarChar, 30, "windowsid")
cmdsql.Parameters("@windowsid").Value = Session("UserInfo").identity.name
If connsql.State <> System.Data.ConnectionState.Open Then connsql.Open()
cmdsql.ExecuteNonQuery()
connsql.Close()
Catch ex As Exception
Finally
If connsql.State <> Data.ConnectionState.Closed Then connsql.Close()
End Try
'Stored Proc records start time
When debugging my application, I m getting an application level error in global.asax file. The Server.GetLastError() reads "File does not exist." but thats it. No more details on the filename or the location where the code is trying to find a file. I commented out the application_error method, with a hope that the exception would be thrown when the debug the application, but no errors were thrown. How do i find the source of the error, cos I want to resolve this issue by either putting the file that the application is looking for or by completely removing the code that is referencing the file.
View 7 RepliesI want to insitate a class instance in the session start of the application. code below
if (Session["user"] != null)
Session["user"] = new user();
I have created the "user" class as a separte dll and referenced and imported the namespace.But still i get 'are u missing assembly reference' it is not problem in 1.1 but seems has a problem in 2.0
Question: When a webapplication gets started, it executes Application_Start in global.asax.Now, a web application gets started as soon as the first request for a page in that application reaches the server.But my question is: how long will the application run until the application is stopped.I mean when after the first page request, there's no traffic on the server.I need to know because I intend to start a server that listens on a tcp port in global.asax.And when the application stops, the server ceases to listen to its port.
View 2 RepliesI'm trying to create Global.asax in a Winform. I could do it in ASP.NET, but i couldn't find a way for Windows Application. I have a singleton class called DataAccessLayer, i need to instantiate it once only, so i can call its method/properties anywhere in the application easily.
View 5 RepliesI have a need to add an application level event (like Application_Start) but not in global.asax. The reason that I can't use global.asax is because this is a web application for which I don't have source code but I want to add some functionality to it. I need to insert an application start code and was wondering it there was anyway to do it. I'm not sure that if I add a class or aspx page to the sie if it will dynamically compile since this is a web application.
View 8 RepliesI want to make sure of one thing. I have implemented the Application_Error() method of Global.asax. In my application some where I have a try catch. If an exception is trown and that exception is handled by a catch block. Does this envoke the Application_Error() method in the global.asax
View 4 Repliesis it possible to get physical path to asp.net mvc 2 application inside Global.asax methods?
I need to get that path in Ninject IoC container configuration. This is a sketch of what i'm having now:
public class MvcApplication : System.Web.HttpApplication
{
protected void Application_Start()
{
AreaRegistration.RegisterAllAreas();
RegisterRoutes(RouteTable.Routes);
[Code]....
I have existing web application project in which i need to add new subdirectory. In this subdirectory i need to add WCF service.Question is: Can i use different AppDomain then services from root directory? Also, can i add new global.asax just for this subdirectory?
View 2 RepliesI have an asp.net application. I want to add a global.asax and global.asax.cs file to my project. In the IDE when I select to create a new global.asax file, the option to create a CS code behind file is greyed out. When the global.asax file is created, no code behind is created, instead code is placed in the global.asax file and the global.asax.cs file is never created? Why is the option for a C# code behind file greyed out?
View 4 Replieswe 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]
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?
What should be done if I want to redirect a user based on their ISO Codes?
And how should I detect a website user's IS Code in the first place? Like I know there are these server variables that we use to detect Client IP and all (HTTP_FORWARDED_FOR, REMOTE_ADDRESS, etc) but information about them on the many sites that I have read has got me confused about what to use. Like some say there can be comma separated IPs returned by HTTP_FORWARDED_X and out of those IPs , one is not sure which is the real IP and which are the proxy addresses. Also, that all the IP addresses in returned can be fake.
How to I fetch the REAL IP Address of a person? Like I only want to know what country a particular person is sitting so I can redirect the user accordingly. Secondly lets say a person is sitting in US then I want the user to be redirected to [URL] If a person is visiting my site from Germany, [URL] is the address that I want the person to be redirected to.Also if DE is the ISO Code then I want my GermanMaster.master page to load and if its US then I want that the USMaster.master should load.
So how do I fetch a user's not fake IP address, redirect a user based on that ISO code and then load a master page according to the ISO Code.
How do I go about it? I haven't ever worked with Global.asax before so clueless how to go about it all.
I'm trying to install a 301 redirect where the instruction is as follows:
"In my Global.asax file (You can add this to your site from Visual Web Developer or Visual Studio by selecting File->New), In the Application_BeginRequest event, I added a call to the following code:"
The code is at bottom if needed. When it says "added a call to the following code:" does that mean something more than just putting the code inside the Application_BeginRequest section of my global.asax? For example, here's what that section looks like in my site:
[Code]....
Usually I use this code to read a file from beginning to end into a List<> and then I write to a file with the code I have above.It seems that StreamReader/StreamWriter is not possible to use in Global.asax.I simply might wonder how I can convert this code for Global.asax?
[Code]....
I'm using a static Timer in my Global.asax to run a method at regular intervals. When the method throws an exception, my application is stopped. I have used an empty catch to prevent exceptions from stopping the application something like below code. Is there a disadvantage to use such an approach?
[Code]....
I'm working on a new C# web application in Visual Studio 2010, and am having problems reading a value in Web.Debug.Config from the GLobal.asax.cs file.
In the Application_Start event I've got the following code:
Application.Add("AppID", ConfigurationManager.AppSettings.Get("AppID"));
I also tried:
Application.Add("AppID", ConfigurationManager.AppSettings["AppID"]);
And in the Web.Debug.Config file I have the following:
<applicationSettings>
<add key="AppID" value="123" />
</applicationSettings>
I also tried:
<appSettings>
<add key="AppID" value="123" />
</appSettings>
And I tried having it in a file path, like so:
<appSettings file="C:MyPathappSettings.config"/>
When running in debugger, I've got a break-point in the Application_Start event in Global.asax.cs. It hits the break point, but in all cases the value coming back from ConfigurationManager is coming back null. What am I doing wrong?
Here's my problem I have some code and I'm using it to send an e-mail with the last error details but all I want is the (Inner)Exception Message to be displayed in the email with the URL
Here's my code
[code]....
I am developing a small asp.net mvc intranet application for our company. Right now the home page will get the Windows username from the windows logged on user and make a call to our active directory based on that username to get more detailed info about the user (email, ect.) Everything works great on my local Visual Studio 2008 server. But when I deploy all the files to my IIS 6.0 server I get the following:
[NullReferenceException: Object reference not set to an instance of an object.]
STPIntranet.MvcApplication.Session_Start() in C:Documents and SettingscsallemiMy DocumentsVisual Studio 2008Projects<ProjectName>Global.asax.cs:50
[TargetInvocationException: Exception has been thrown by the target of an invocation.]
System.RuntimeMethodHandle._InvokeMethodFast(Object target, Object[] arguments, SignatureStruct& sig, MethodAttributes methodAttributes, RuntimeTypeHandle typeOwner) +0
System.RuntimeMethodHandle.InvokeMethodFast(Object target, Object[] arguments, Signature sig, MethodAttributes methodAttributes, RuntimeTypeHandle typeOwner) +71
System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture, Boolean skipVisibilityChecks) +350
System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture) +29
System.Web.Util.ArglessEventHandlerProxy.Callback(Object sender, EventArgs e) +42
System.Web.SessionState.SessionStateModule.RaiseOnStart(EventArgs e) +8779824
System.Web.SessionState.SessionStateModule.CompleteAcquireState() +237
System.Web.SessionState.SessionStateModule.BeginAcquireState(Object source, EventArgs e, AsyncCallback cb, Object extraData) +504
System.Web.AsyncEventExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() +66
System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously) +155
It is failed in my Global.asax.cs file where I try to populate a custom User object (has a username and email property). In line 50 where the error is occuring I make a call to a class called SecurityUtil to get the username from WindowsIdentity.GetCurrent() and then get the email by making a call into our active directory. I almost want to say that the necessary libraries are not getting added in either my project dll or web.config file because of the null pointer. Also, the error line is point to my local file structure (C:Documents and SettingscsallemiMy DocumentsVisual Studio 2008Projects) and not the file structure residing on my iis 6.0 machine.
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();
}
I'm trying to use SESSION in my MVC application.I wrote following line in Global.asax in Application_Start() method file:
protected void Application_Start()
{
AreaRegistration.RegisterAllAreas();
//uzupełnij zmienne sesyjne
HttpContext.Current.Session["LOCATION_ID"] = 15;
RegisterRoutes(RouteTable.Routes);
}
I also enabled SessionState in Web.config by addind following line:
<sessionState mode="InProc" cookieless="false" timeout="120" />
And when I run the application I'm getting this exception:
Szczegły wyjątku: System.NullReferenceException: Odwołanie do obiektu nie zostało ustawione na wystąpienie obiektu.
Błąd źrdła:
[Code]....
Wiersz 31: //uzupełnij zmienne sesyjneWiersz 32: Wiersz 33: HttpContext.Current.Session["LOCATION_ID"] = 15;Wiersz 34: Wiersz 35: RegisterRoutes(RouteTable.Routes);