您不需要像我们以前描述的那样在 IIS 中运行 .Net Core 来轻松调试等。
使用 .Net Core,您只需在项目根目录中打开命令行并输入“dotnet run”
DotNet Run 使用环境变量来驱动它的工作。因此,如果您希望您的网站在特定 URL 或端口上运行,请键入:
SET ASPNETCORE_URLS=http://example.com
或者如果你只是想让它在不同的端口上运行
SET ASPNETCORE_URLS=http://localhost:8080
然后设置环境
SET ASPNETCORE_ENVIRONMENT=Development
设置好所有环境变量后,输入
dotnet run
现在要对其进行调试,请附加到 cmd.exe,并在其标题中使用 dotnet run。您将能够以这种方式调试您的代码。
现在,如果您使用 Visual Studio,在您的项目的“属性”下有一个名为“launchSettings.JSON”的文件。您可以在此处配置配置文件,我将我的默认配置文件设置为 Kestrel Development,然后是 Kestrel Production,IIS 最后死机,这样我就不会在 IIS Express 中运行 F5。
我的 LaunchSettings.json 如下所示:
{
"iisSettings": {
"windowsAuthentication": false,
"anonymousAuthentication": true,
"iisExpress": {
"applicationUrl": "http://localhost:56545/",
"sslPort": 0
}
},
"profiles": {
"Kestrel Development": {
"executablePath": "dotnet run",
"commandName": "Project",
"commandLineArgs": "dotnet run",
"environmentVariables": {
"ASPNETCORE_ENVIRONMENT": "Development",
"ASPNETCORE_URLS": "http://localhost:8080"
}
},
"Kestrel Production": {
"commandLineArgs": "dotnet run",
"commandName": "Project",
"environmentVariables": {
"ASPNETCORE_URLS": "http://localhost:8080",
"ASPNETCORE_ENVIRONMENT": "Production"
},
"executablePath": "dotnet"
},
"IIS Express": {
"commandName": "IISExpress",
"launchBrowser": true,
"environmentVariables": {
"ASPNETCORE_ENVIRONMENT": "Development"
}
}
}
}
第一个配置文件是您按下 F5 时使用的配置文件。因此,当我按 F5 时,Visual Studio 会为我启动 dotnet run 并设置环境和 URL,由我在 launchSettings.JSON 中的配置文件的 environmentVariables 部分指定。
现在因为我有多个配置文件,所以我在运行按钮旁边有一个下拉菜单,因此如果我想在本地以生产模式运行,我可以选择 Kestrel Production。