Skip to content

Instantly share code, notes, and snippets.

@aetos382
Last active February 25, 2026 04:40
Show Gist options
  • Select an option

  • Save aetos382/5569b73be7ef7eb210a023deae8d7606 to your computer and use it in GitHub Desktop.

Select an option

Save aetos382/5569b73be7ef7eb210a023deae8d7606 to your computer and use it in GitHub Desktop.
ASP.NET Core の Program.cs の書き方の変遷

ASP.NET Core の Program.cs の書き方の変遷

ASP.NET Core 1 ~ 5 では UseStartup<T> を使うのが一般的でしたが、使わなくても同等の内容は書けるので、今回は使いませんでした。

また、IConfguration やロギングやその他のサービスは敢えて省いています。

ASP.NET Core 5 は ASP.NET Core 3 と同じです(ASP.NET Core 4 は欠番です)。

ASP.NET Core 7 以降は ASP.NET Core 6 と同じです。

using Microsoft.AspNetCore.Hosting;
using Microsoft.AspNetCore.Http;
using var host = new WebHostBuilder()
.ConfigureServices(static services =>
{
})
.Configure(static app =>
{
app.Use(static _ => static context => context.Response.WriteAsync("Hello, ASP.NET Core 1"));
})
.UseKestrel()
.Build();
host.Run();
using Microsoft.AspNetCore;
using Microsoft.AspNetCore.Hosting;
using Microsoft.AspNetCore.Http;
using var host = WebHost
.CreateDefaultBuilder()
.ConfigureServices(static services =>
{
})
.Configure(static app =>
{
app.Use(static _ => context => context.Response.WriteAsync("Hello, ASP.NET Core 2"));
})
.Build();
host.Run();
using Microsoft.AspNetCore.Hosting;
using Microsoft.AspNetCore.Http;
using Microsoft.Extensions.Hosting;
var host = Host
.CreateDefaultBuilder()
.ConfigureServices(static services =>
{
})
.ConfigureWebHostDefaults(static webHostBuilder => webHostBuilder
.Configure(static app =>
{
app.Use(static _ => static context => context.Response.WriteAsync("Hello, ASP.NET Core 3"));
}))
.Build();
host.Run();
using Microsoft.AspNetCore.Builder;
using Microsoft.AspNetCore.Hosting;
using Microsoft.AspNetCore.Http;
var builder = WebApplication.CreateBuilder();
// ConfigureService 相当のことは builder.Services.AddXxx で行う
using var app = builder.Build();
app.Use(static _ => static context => context.Response.WriteAsync("Hello, ASP.NET Core 6"));
app.Run();
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment