【问题标题】:How to create a blazor framework client side app which should deploy as static files如何创建应部署为静态文件的 Blazor 框架客户端应用程序
【发布时间】:2019-05-14 09:33:25
【问题描述】:

我必须使用 blazor 框架创建一个静态页面站点。这是什么命令。

我已经安装了 dotnet core sdk 3.0 preview 并尝试使用命令创建一个 blazor 应用程序

“dotnet 新 blazor”

.

--- 下面是命令执行的输出 --

dotnet new blazor 模板“Blazor(服务器端)”已创建 成功。

正在处理创建后操作...运行“dotnet restore” C:\Users\user\Documents\VS_CODE\blazoring\blazoring.csproj...
恢复在 206.18 毫秒内完成 C:\Users\user\Documents\VS_CODE\blazoring\blazoring.csproj.

恢复成功。


我希望它只会生成静态页面。但它没有这样做,它正在生成服务器端应用程序并通过 localhost:5000 进行部署

【问题讨论】:

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


【解决方案1】:

听起来您没有安装正确的模板。为了获得正确的 Blazor 模板,您可以使用以下命令。

dotnet new -i Microsoft.AspNetCore.Blazor.Templates::3.0.0-preview5-19227-01

安装 Blazor 模板后,您可以使用以下命令创建独立的客户端 Blazor 应用。

dotnet new blazor

要发布此文件并获取静态文件,您需要在与应用程序 .csproj 文件相同的目录中使用以下命令。

dotnet publish -c release

然后您应该在以下目录中找到您需要的所有静态文件。

\bin\Release\netstandard2.0\publish\<projectname>\dist

我建议您阅读有关托管客户端 Blazor 的官方文档,您可以找到 here。我还写了几篇关于使用 Azure 管道发布 Blazor 应用程序的博客文章,如果您感兴趣,可以找到 here

【讨论】:

  • 这生成了一个有点不同的模板,但只能通过 localhost:5000 完全运行,在 dotnet 运行中,发布文件夹中的静态页面只是没有布局的 index.html
  • 我很确定你的意思,Blazor 是一个 SPA 框架,因此一旦应用程序被编译,你将只有一个 index.html。您的各个组件将被编译到 dll 中。
  • 那么如何将它们作为静态页面访问,如果它们将通过服务器提供服务,那么使用 blazor 优于 js html 和 css 的优势是什么
  • dist目录的内容是静态文件。它们可以放置在任何网络服务器上,并且无需安装 .NET Core 即可工作。我真的建议您阅读我链接到的 Blazor 文档的托管部分,或者阅读我关于部署 Blazor 应用程序的文章。
  • @sikka karma html、js 和 css 也由 Web 服务器提供服务。您认为“静态”网站是什么?
猜你喜欢
  • 2023-03-19
  • 1970-01-01
  • 2011-08-11
  • 2019-04-04
  • 1970-01-01
  • 2019-07-17
  • 1970-01-01
  • 2021-04-05
  • 2020-05-17
相关资源
最近更新 更多