WebHostBuilder
エントリポイントで使用する場合Main
、バインドするポートをどのように指定できますか?
デフォルトでは 5000 が使用されます。
この質問は新しい ASP.NET Core API (現在は 1.0.0-RC2) に固有のものであることに注意してください。
ベストアンサー1
ASP.NET Core 3.1 では、カスタム ポートを指定する主な方法が 4 つあります。
コマンドライン引数を使用するには、.NET アプリケーションを次のように起動します
--urls=[url]
。dotnet run --urls=http://localhost:5001/
を使用し
appsettings.json
、Urls
ノードを追加します。{ "Urls": "http://localhost:5001" }
環境変数を使用します
ASPNETCORE_URLS=http://localhost:5001/
。UseUrls()
プログラム的に実行したい場合は を使用します。public static class Program { public static void Main(string[] args) => CreateHostBuilder(args).Build().Run(); public static IHostBuilder CreateHostBuilder(string[] args) => Host.CreateDefaultBuilder(args) .ConfigureWebHostDefaults(builder => { builder.UseStartup<Startup>(); builder.UseUrls("http://localhost:5001/"); }); }
または、汎用ホスト ビルダーではなく、Web ホスト ビルダーをまだ使用している場合:
public class Program
{
public static void Main(string[] args) =>
new WebHostBuilder()
.UseKestrel()
.UseContentRoot(Directory.GetCurrentDirectory())
.UseIISIntegration()
.UseStartup<Startup>()
.UseUrls("http://localhost:5001/")
.Build()
.Run();
}