ASP.NET Core Interview Question #36

What is Program.cs in modern ASP.NET Core?

Application Structure & Configuration Junior Beginner

Quick Interview Answer

Program.cs is the main application entry point in modern ASP.NET Core. With the minimal hosting model introduced in .NET 6, it commonly contains service registration, application construction, middleware configuration, route mapping, and the call to Run().

Detailed Explanation

Program.cs is the main application entry point in modern ASP.NET Core. With the minimal hosting model introduced in .NET 6, it commonly contains service registration, application construction, middleware configuration, route mapping, and the call to Run().

WebApplication.CreateBuilder(args) prepares configuration, logging, dependency injection, and hosting services. builder.Build() creates the application, after which middleware and endpoints are configured.

Keeping Program.cs focused on composition is good practice. Large registration or configuration blocks can be moved into extension methods.

Code Example

var builder = WebApplication.CreateBuilder(args);

builder.Services.AddControllersWithViews();

var app = builder.Build();

app.UseHttpsRedirection();
app.UseStaticFiles();
app.UseRouting();
app.UseAuthorization();

app.MapDefaultControllerRoute();

app.Run();