【问题标题】:Running Blazor Hosted App from command line从命令行运行 Blazor 托管应用程序
【发布时间】:2020-06-21 06:56:22
【问题描述】:

我有一个 Blazor 托管应用程序,其中包含客户端(webassembly)、服务器和共享项目(来自 webassembly 托管模板)。它在 Visual Studio 中运行良好,但我不知道如何从命令行运行它。我试过了:

  1. dotnet 运行(从解决方案、根项目和服务器项目目录)
  2. 从服务器项目下的netcoreapp3.1目录运行Visual Studio构建的exe
  3. 从服务器项目下的 netcoreapp3.1 目录运行 dll(使用 dotnet 命令)
  4. 2 和 3 都来自发布目录

他们都失败了。有谁知道我将如何从命令行运行它?我想将它推送到 Cloud Foundry,但不知道如何运行它。

【问题讨论】:

  • 第 2 项对我有用。描述你所看到的。只是“他们都失败了”是没有帮助的。
  • 这帮助解决了我的问题....愚蠢的开发人员与我的代码中的发布错误。
  • @henk-holterman - 我撒谎了......当我现在运行服务器 exe 时,服务器部分正在运行,但它没有找到我的页面。你有这个问题吗?你的页面正常吗?我的主布局和导航菜单出现了,但页面显示“抱歉,此地址没有任何内容。”。
  • 从标准模板出来它工作正常。有没有添加授权相关的代码?
  • 我使用 ASP.Net Core 托管创建了一个新的 Blazor 客户端应用程序,从解决方案目录中执行了“dotnet build -c Release”和“dotnet publish -c Release”,进入服务器\bin\release\netcoreapp3.1\publish 目录,运行EXE,打开浏览器到localhost:5000,得到了和上面一样的信息(“对不起,这个地址什么都没有”)。

标签: c# asp.net .net-core blazor


【解决方案1】:

在 Windows 命令提示符下以这种方式创建托管的 Blazor 应用(即具有 Blazor 客户端部分和服务器 Web API 部分的应用):

md NameOfYourApp

cd NameOfYourApp

dotnet new blazorwasm --hosted

这将创建一个 Blazor 应用,其中包含 NameOfYourApp 下的客户端、服务器和共享文件夹。

在客户端或服务器文件夹中使用dotnet run 将无法正常工作。相反,要从命令行运行您的应用,请运行构建时创建的 Server .exe 文件:

dotnet build

cd Server\bin\Debug\net5.0

NameOfYourApp.Server.exe

(如果不切换到.exe所在的目录,你的应用将找不到appsettings.json文件。)

【讨论】:

    【解决方案2】:

    在 .NET 5 上,我能够使用 dotnet run 运行 Blazor 客户端应用程序

    cd C:\path\to\source\server
    dotnet run
    

    它应该显示类似Now listening on https://localhost:5001 的内容,并且您应该能够在浏览器中导航到那里。

    如果这不起作用,您可能需要配置 SSL 证书。我必须将此"Key" 部分添加到我的appsettings.json。请注意,这适用于已发布和发布版本 - 更多信息 here

      "IdentityServer": {
        "Clients": {
          "BlazorApp.Client": {
            "Profile": "IdentityServerSPA"
          }
        },
        "Key": {
            "Type": "Store",
            "StoreName": "My",
            "StoreLocation": "CurrentUser",
            "Name": "CN=localhost"
          }
      },
    

    您可以使用ls查看您的证书

    ls Cert:\CurrentUser\My\{thumbprint}
    

    只需使用 tab 补全来找出路径

    【讨论】:

      猜你喜欢
      • 2016-03-13
      • 2022-07-23
      • 2016-06-18
      • 1970-01-01
      • 1970-01-01
      • 2015-04-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多