Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

ASP.NET Entry Point?

Tags:

Just created a blank "ASP.NET Web Application". Where's the entry point?

I see "Default.aspx" which seems to be the default template that calls. "Site.Master" which I guess acts as a layout file. "Global.asax" that seems to provide some method stubs for event handling. And then "Web.config" which seems to have some site-specific settings such as a DB connection string, and some authentication stuff.

But no where do I see any "routes" or anything to indicate that "Default.aspx" should be called by default, or "Global.asax" should be used to handle events. Where's this stuff specified? Is it baked into the core of ASP? Can't I filter all the requests through one C# method and then delegate how I please? And return some sort of Http response?

like image 377
mpen Avatar asked Nov 24 '10 08:11

mpen


People also ask

What is the entry point for ASP NET application?

The Startup class is the entry point to the application, setting up configuration and wiring up services the application will use. Developers configure a request pipeline in the Startup class that is used to handle all requests made to the application.

What is the entry point for ASP NET MVC?

The module and handler are the entry points to the ASP.NET MVC framework. They perform the following actions: Select the appropriate controller in an MVC Web application.

What is entry point in web?

The entry point allows you to define where you want your engagement to appear within your website. You can use one of the predefined entry points, such as Entire Website or Entire App, or focus your targeting on a particular page or section.

What is ASP.NET Core identity used for?

ASP.NET Core Identity: Is an API that supports user interface (UI) login functionality. Manages users, passwords, profile data, roles, claims, tokens, email confirmation, and more.


2 Answers

I think I wanted to know the first line of code that gets hit when a new request comes in.

The HttpApplication class contains the first line of code of your application. Its constructor is very much the entry point for your application. From the docs:

After all core application objects have been initialized, the application is started by creating an instance of the HttpApplication class.

There are two canonical ways to write the first line of code that gets hit for a new request. Both involve creating a Global.asax file and handling its events.

To handle application events or methods, you can create a file named Global.asax in the root directory of your application.

You will want to handle Application_Start and/or Application_BeginRequest.

  • Application_Start is for code that gets hit on the very first request to the application. Each time we restart the application, the next request will enter here. This is per application startup.
  • Application_BeginRequest is for code that gets hit on each request to the application. This is per request.

Of course, this all changes with ASP.NET Core.

like image 101
Shaun Luttin Avatar answered Nov 16 '22 23:11

Shaun Luttin


There's no notion of entry point. The way it works is that the user sends an HTTP request to an url and this url sends a response to the user. In the properties of the project you could configure which URL to launch in Visual Studio when you hit F5 because by default it launches the file you are currently editing.

Also the web server has a notion of default document i.e. if you don't specify any page it will load the default documents in the order they are configured:

alt text

like image 27
Darin Dimitrov Avatar answered Nov 17 '22 00:11

Darin Dimitrov