Visual Studio Mac上的WebApp未运行



我正在VS Mac上为客户端运行一个web项目。它是一个。NET Core 3.1 web api项目。当我尝试在运行配置上运行调试时,它构建良好,启动良好,但它不会自动打开浏览器,我也无法通过localhost访问控制器方法。这就像它没有监听我的本地主机或端口;localhost:9017";以及";当应用程序启动时在web浏览器中打开URL";检查。URL是";api/health";。我甚至没有看到";现在在localhost:9017"上侦听;在应用程序输出中。我还有什么不考虑的?它不适用于dotnet运行,或通过vs代码。

这是启动json

{
"version": "0.2.0",
"configurations": [
{
"name": ".NET Core Launch (web)",
"type": "coreclr",
"request": "launch",
"preLaunchTask": "build",
"program": "${workspaceFolder}/src/my.project/bin/Debug/netcoreapp3.1/my.project.dll",
"args": [],
"cwd": "${workspaceFolder}/src/my.project",
"stopAtEntry": false,
"serverReadyAction": {
"action": "openExternally",
"pattern": "\bNow listening on:\s+(https?://\S+)",
"uriFormat": "%s/api/health"
},
"env": {
"ASPNETCORE_ENVIRONMENT": "dev"
},
"sourceFileMap": {
"/Views": "${workspaceFolder}/Views"
}
},
{
"name": ".NET Core Attach",
"type": "coreclr",
"request": "attach",
"processId": "${command:pickProcess}"
}
]
}

事实证明,这不是dotnet运行或visual Studio的问题。我在docker容器中运行了代码,得到了相同的结果。事实证明,该团队在Program.cs文件中添加了以下行,并且默认侦听URL为http://[:]:9017。对于windows机器,它可以很好地使用localhost。

.ConfigureWebHostDefaults(webBuilder =>
{
webBuilder.UseStartup<Startup>();
webBuilder.UseUrls("http://+:9017");
});

最新更新