我已完成以下操作,但仍然无效。正在运行dotnet myapp.dll
仍会显示正在监听http://localhost:5000。
代码:
{
"server.url": "http://*:5001"
}
代码:
public class Program
{
public static void Main(string[] args)
{
var config = new ConfigurationBuilder()
.SetBasePath(Directory.GetCurrentDirectory())
.AddJsonFile("hosting.json", optional: true, reloadOnChange: true)
.Build();
var host = new WebHostBuilder()
.UseConfiguration(config) // added
.UseKestrel()
.UseContentRoot(Directory.GetCurrentDirectory())
//.UseUrls("http://*:5001")
.UseIISIntegration()
.UseStartup<Startup>()
.Build();
host.Run();
}
}
代码:
"publishOptions": {
"include": [
"wwwroot",
"Views",
"Areas/**/Views",
"appsettings.json",
"web.config",
"NLog.config",
"hosting.json"
]
答案 0 :(得分:2)
您需要更改顺序:在文件读取之前应调用.SetBasePath
var config = new ConfigurationBuilder()
.SetBasePath(Directory.GetCurrentDirectory())
.AddJsonFile("hosting.json", optional: true, reloadOnChange: true)
.Build();
使用server.urls
,而不是server.url