为什么Blazor中的服务器项目引用了客户端项目

为什么Blazor中的服务器项目引用了客户端项目,blazor,blazor-boilerplate,Blazor,Blazor Boilerplate,我正在看一些推荐的blazor工具包类型的项目,我忍不住注意到,我在网上看到的所有服务器端项目碰巧都添加了客户机项目作为对服务器项目的引用。。。例如,在中,我们有: 此引用在触发我时导致以下情况: 这里有我遗漏的东西吗?我已经学习了很多教程,但没有人明确强调这一点。当您看到这一点时,很明显,它是用来为客户端应用程序及其使用的所有程序集提供服务的 您可以在server Startup类中找到两个相关行: app.UseClientSideBlazorFiles(); ... MapFallba

我正在看一些推荐的blazor工具包类型的项目,我忍不住注意到,我在网上看到的所有服务器端项目碰巧都添加了客户机项目作为对服务器项目的引用。。。例如,在中,我们有:

此引用在触发我时导致以下情况:

这里有我遗漏的东西吗?我已经学习了很多教程,但没有人明确强调这一点。

当您看到这一点时,很明显,它是用来为客户端应用程序及其使用的所有程序集提供服务的

您可以在server Startup类中找到两个相关行:

app.UseClientSideBlazorFiles();
...
MapFallbackToClientSideBlazor(“index.html”);
在这两种情况下,
Client.Startup
类用于查找程序集,并从中通过一些反射来确定要服务的(静态)文件

您可以删除项目引用,并将
clientAssemblyFilePath
而不是
传递给这两种方法。这可能需要对构建目标进行一些调整。认为这是一个方便的特性。