如何在其他端口上启动dotnet core mvc应用程序?

时间:2019-07-24 11:56:39

标签: c# asp.net-mvc visual-studio-code .net-core-2.2

我的dotnetcoreapp2.2应用程序在port 5001下运行良好(配置了dev cert之后),但是我无法使其在任何其他端口下启动。这是我尝试配置的组件...

Program.cs:

    public static IWebHostBuilder CreateWebHostBuilder(string[] args) =>
        WebHost.CreateDefaultBuilder(args)
            .UseUrls("http://localhost:5000")  
            .UseKestrel()
            .UseStartup<Startup>()
            .UseApplicationInsights();

Startup.cs:

    public void Configure(IApplicationBuilder app, IHostingEnvironment env)
    {
        app.UseAuthentication();

        if (env.IsDevelopment() || env.IsEnvironment("Developer"))
        {
            app.UseDeveloperExceptionPage();
        }

        app.UseHttpsRedirection();

        app.UseMvc(routes =>
        {
            routes.MapRoute(
                name: "default",
                template: "{controller}/{action=Index}/{id?}");
        });
    }

launch.json:

        "args": [
            "--urls", "http://localhost:5000"
        ],
        "cwd": "${workspaceFolder}",
        "stopAtEntry": false,
        "launchBrowser": {
            "enabled": true,
            "args": "${auto-detect-url}",
            "windows": {
                "command": "cmd.exe",
                "args": "/C start ${auto-detect-url}"
            }
        },
        "env": {
            "ASPNETCORE_ENVIRONMENT": "Developer",
            "ASPNETCORE_URLS": "http://localhost:5000"
        },

我丢失了某些东西或配置不正确吗?

1 个答案:

答案 0 :(得分:0)

使用IIS / IIS Express时,通常会发生此问题,因此请摆脱IIS。

将Web服务器作为.net核心控制台应用程序运行,而不是使用IIS Express(每个项目都有自己的端口配置文件,这很烦人)。

要这样做::在Project's Properties > Debug >

中更改调试配置文件
  1. 将IIS Express中Profile的值更改为“ select-your-project-name
  2. Launch的值从IIS或IIS Express更改为Project
  3. 然后,您将在同一窗口的底部看到Web Server Settings,您可以使用它来更改端口(IIS配置不再使用)。
  4. 此外,您还应该将默认调试器从IIS Express更改为“ select-your-project-name”(您将看到单击以调试项目的位置)