Creating Modern Creating Modern WebAPIs With WebAPIs With ASP.NET Core 3 ASP.NET Core 3 WebAPI Mobile Desktop Web ... Tooling DOTNET CLI .NET CLI dotnet new ... 1 2 dotnet new webapi 3 .NET CLI dotnet new ... 1 2 dotnet new webapi 3 dotnet new webapi dotnet new ... 1 2 3 public class Program { } 1 2 public static void Main(string[] args) 3 { 4 CreateHostBuilder(args).Build().Run(); 5 } 6 7 public static IHostBuilder CreateHostBuilder(string[] args 8 Host.CreateDefaultBuilder(args) 9 .ConfigureWebHostDefaults(webBuilder => 10 { 11 webBuilder.UseStartup<Startup>(); 12 }); 13 14 public class Program { } 1 2 public static void Main(string[] args) 3 { 4 CreateHostBuilder(args).Build().Run(); 5 } 6 7 public static IHostBuilder CreateHostBuilder(string[] args 8 Host.CreateDefaultBuilder(args) 9 .ConfigureWebHostDefaults(webBuilder => 10 { 11 webBuilder.UseStartup<Startup>(); 12 }); 13 14 public static void Main(string[] args) { CreateHostBuilder(args).Build().Run(); } public class Program 1 { 2 3 4 5 6 7 public static IHostBuilder CreateHostBuilder(string[] args 8 Host.CreateDefaultBuilder(args) 9 .ConfigureWebHostDefaults(webBuilder => 10 { 11 webBuilder.UseStartup<Startup>(); 12 }); 13 } 14 public class Program { } 1 2 public static void Main(string[] args) 3 { 4 CreateHostBuilder(args).Build().Run(); 5 } 6 7 public static IHostBuilder CreateHostBuilder(string[] args 8 Host.CreateDefaultBuilder(args) 9 .ConfigureWebHostDefaults(webBuilder => 10 { 11 webBuilder.UseStartup<Startup>(); 12 }); 13 14 public static void Main(string[] args) { CreateHostBuilder(args).Build().Run(); } public class Program 1 { 2 3 4 5 6 7 public static IHostBuilder CreateHostBuilder(string[] args 8 Host.CreateDefaultBuilder(args) 9 .ConfigureWebHostDefaults(webBuilder => 10 { 11 webBuilder.UseStartup<Startup>(); 12 }); 13 } 14 public static IHostBuilder CreateHostBuilder(string[] args Host.CreateDefaultBuilder(args) .ConfigureWebHostDefaults(webBuilder => { webBuilder.UseStartup<Startup>(); }); public class Program 1 { 2 public static void Main(string[] args) 3 { 4 CreateHostBuilder(args).Build().Run(); 5 } 6 7 8 9 10 11 12 13 } 14 public class Program { } 1 2 public static void Main(string[] args) 3 { 4 CreateHostBuilder(args).Build().Run(); 5 } 6 7 public static IHostBuilder CreateHostBuilder(string[] args 8 Host.CreateDefaultBuilder(args) 9 .ConfigureWebHostDefaults(webBuilder => 10 { 11 webBuilder.UseStartup<Startup>(); 12 }); 13 14 public static void Main(string[] args) { CreateHostBuilder(args).Build().Run(); } public class Program 1 { 2 3 4 5 6 7 public static IHostBuilder CreateHostBuilder(string[] args 8 Host.CreateDefaultBuilder(args) 9 .ConfigureWebHostDefaults(webBuilder => 10 { 11 webBuilder.UseStartup<Startup>(); 12 }); 13 } 14 public static IHostBuilder CreateHostBuilder(string[] args Host.CreateDefaultBuilder(args) .ConfigureWebHostDefaults(webBuilder => { webBuilder.UseStartup<Startup>(); }); public class Program 1 { 2 public static void Main(string[] args) 3 { 4 CreateHostBuilder(args).Build().Run(); 5 } 6 7 8 9 10 11 12 13 } 14 .ConfigureWebHostDefaults(webBuilder => { webBuilder.UseStartup<Startup>(); }); public class Program 1 { 2 public static void Main(string[] args) 3 { 4 CreateHostBuilder(args).Build().Run(); 5 } 6 7 public static IHostBuilder CreateHostBuilder(string[] args 8 Host.CreateDefaultBuilder(args) 9 10 11 12 13 } 14 public class Program { } 1 2 public static void Main(string[] args) 3 { 4 CreateHostBuilder(args).Build().Run(); 5 } 6 7 public static IHostBuilder CreateHostBuilder(string[] args 8 Host.CreateDefaultBuilder(args) 9 .ConfigureWebHostDefaults(webBuilder => 10 { 11 webBuilder.UseStartup<Startup>(); 12 }); 13 14 public static void Main(string[] args) { CreateHostBuilder(args).Build().Run(); } public class Program 1 { 2 3 4 5 6 7 public static IHostBuilder CreateHostBuilder(string[] args 8 Host.CreateDefaultBuilder(args) 9 .ConfigureWebHostDefaults(webBuilder => 10 { 11 webBuilder.UseStartup<Startup>(); 12 }); 13 } 14 public static IHostBuilder CreateHostBuilder(string[] args Host.CreateDefaultBuilder(args) .ConfigureWebHostDefaults(webBuilder => { webBuilder.UseStartup<Startup>(); }); public class Program 1 { 2 public static void Main(string[] args) 3 { 4 CreateHostBuilder(args).Build().Run(); 5 } 6 7 8 9 10 11 12 13 } 14 .ConfigureWebHostDefaults(webBuilder => { webBuilder.UseStartup<Startup>(); }); public class Program 1 { 2 public static void Main(string[] args) 3 { 4 CreateHostBuilder(args).Build().Run(); 5 } 6 7 public static IHostBuilder CreateHostBuilder(string[] args 8 Host.CreateDefaultBuilder(args) 9 10 11 12 13 } 14 webBuilder.UseStartup<Startup>(); public class Program 1 { 2 public static void Main(string[] args) 3 { 4 CreateHostBuilder(args).Build().Run(); 5 } 6 7 public static IHostBuilder CreateHostBuilder(string[] args 8 Host.CreateDefaultBuilder(args) 9 .ConfigureWebHostDefaults(webBuilder => 10 { 11 12 }); 13 } 14 public Startup(IConfiguration configuration) { Configuration = configuration; } public IConfiguration Configuration { get; } public class Startup 1 { 2 3 4 5 6 7 8 9 public void ConfigureServices(IServiceCollection services) 10 { 11 services.AddControllers(); 12 } 13 14 public void Configure(IApplicationBuilder app, IWebHostEnvironment env) 15 { 16 if (env.IsDevelopment()) 17 { 18 app.UseDeveloperExceptionPage(); 19 } 20 21 app.UseHttpsRedirection(); 22 23 app.UseRouting(); 24 25 app.UseAuthorization(); 26 27 app.UseEndpoints(endpoints => 28 { 29 endpoints.MapControllers(); 30 }); 31 } 32 } 33 public Startup(IConfiguration configuration) { Configuration = configuration; } public IConfiguration Configuration { get; } public class Startup 1 { 2 3 4 5 6 7 8 9 public void ConfigureServices(IServiceCollection services) 10 { 11 services.AddControllers(); 12 } 13 14 public void Configure(IApplicationBuilder app, IWebHostEnvironment env) 15 { 16 if (env.IsDevelopment()) 17 { 18 app.UseDeveloperExceptionPage(); 19 } 20 21 app.UseHttpsRedirection(); 22 23 app.UseRouting(); 24 25 app.UseAuthorization(); 26 27 app.UseEndpoints(endpoints => 28 { 29 endpoints.MapControllers(); 30 }); 31 } 32 } 33 public void ConfigureServices(IServiceCollection services) { services.AddControllers(); } public class Startup 1 { 2 public Startup(IConfiguration configuration) 3 { 4 Configuration = configuration; 5 } 6 7 public IConfiguration Configuration { get; } 8 9 10 11 12 13 14 public void Configure(IApplicationBuilder app, IWebHostEnvironment env) 15 { 16 if (env.IsDevelopment()) 17 { 18 app.UseDeveloperExceptionPage(); 19 } 20 21 app.UseHttpsRedirection(); 22 23 app.UseRouting(); 24 25 app.UseAuthorization(); 26 27 app.UseEndpoints(endpoints => 28 { 29 endpoints.MapControllers(); 30 }); 31 } 32 } 33 public Startup(IConfiguration configuration) { Configuration = configuration; } public IConfiguration Configuration { get; } public class Startup 1 { 2 3 4 5 6 7 8 9 public void ConfigureServices(IServiceCollection services) 10 { 11 services.AddControllers(); 12 } 13 14 public void Configure(IApplicationBuilder app, IWebHostEnvironment env) 15 { 16 if (env.IsDevelopment()) 17 { 18 app.UseDeveloperExceptionPage(); 19 } 20 21 app.UseHttpsRedirection(); 22 23 app.UseRouting(); 24 25 app.UseAuthorization(); 26 27 app.UseEndpoints(endpoints => 28 { 29 endpoints.MapControllers(); 30 }); 31 } 32 } 33 public void ConfigureServices(IServiceCollection services) { services.AddControllers(); } public class Startup 1 { 2 public Startup(IConfiguration configuration) 3 { 4 Configuration = configuration; 5 } 6 7 public IConfiguration Configuration { get; } 8 9 10 11 12 13 14 public void Configure(IApplicationBuilder app, IWebHostEnvironment env) 15 { 16 if (env.IsDevelopment()) 17 { 18 app.UseDeveloperExceptionPage(); 19 } 20 21 app.UseHttpsRedirection(); 22 23 app.UseRouting(); 24 25 app.UseAuthorization(); 26 27 app.UseEndpoints(endpoints => 28 { 29 endpoints.MapControllers(); 30 }); 31 } 32 } 33 public void Configure(IApplicationBuilder app, IWebHostEnvironment env) { if (env.IsDevelopment()) { app.UseDeveloperExceptionPage(); } app.UseHttpsRedirection(); app.UseRouting(); app.UseAuthorization(); app.UseEndpoints(endpoints => { endpoints.MapControllers(); }); } public class Startup 1 { 2 public Startup(IConfiguration configuration) 3 { 4 Configuration = configuration; 5 } 6 7 public IConfiguration Configuration { get; } 8 9 public void ConfigureServices(IServiceCollection services) 10 { 11 services.AddControllers(); 12 } 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 } 33 JSON Serialization JSON Serialization Newtonsoft.Jso n System.Text.Js on JSON Serialization > InstallPackage Microsoft.AspNetCore.Mvc.NewtonsoftJs on JSON Serialization