using Microsoft.Extensions.Configuration; using Microsoft.Extensions.Options; using System.Net; using System.Runtime.CompilerServices; using System.Text.Json; using VideoArchiveAPI; string configPath = "config.json"; var builder = WebApplication.CreateBuilder(args); // configPath ¸¦ ÇöÀç ½ÇÇà ÆÄÀÏÀÌ ÀÖ´Â Æú´õ·Î º¯°æ configPath = System.IO.Path.Combine(System.IO.Path.GetDirectoryName(System.Reflection.Assembly.GetExecutingAssembly().Location), configPath); if (!System.IO.File.Exists(configPath)) { string defaultSetting = "{\"Config\": {\"Port\": 8981,\"Location\": \".\\\\\"}}"; System.IO.File.WriteAllText(configPath , defaultSetting); } builder.Configuration.AddJsonFile(configPath, optional: false, reloadOnChange: true); builder.Services.Configure(builder.Configuration.GetSection("Config")); Config localConfig = builder.Configuration.GetSection(Config.SectionName).Get(); builder.WebHost.ConfigureKestrel((context, serverOptions) => { // ·çÇÁ¹é ÀÌ¸é ·ÎÄÿ¡¼­¸¸ Á¢¼Ó °¡´É serverOptions.Listen(IPAddress.Loopback, localConfig.Port); }); builder.Services.AddControllers(); var app = builder.Build(); app.MapControllers(); app.Run();