我是Blazor的新手,开始在.NET8版本中使用它.我很困惑
在即使我 Select 了WebAssembly渲染模式的部分
VS仍然创建了两个独立的项目.
根据你的问题,是的,在使用Blazor WebAssembly时,可能会对两个独立的项目产生一些混淆,但它确实提供了广泛的灵活性,其中包括,在Blazor WebAssembly托管模型中,客户端和服务器项目的分离提供了明确的关注点分离.
不仅如此,它显然支持服务器端功能,促进了与ASP.NET Core features的集成,并提供了hosting and deployment个选项的灵活性.虽然乍一看它可能与其他前端框架不同,但它与服务器-客户端体系 struct 和ASP.NET核心框架的功能非常一致.
为什么不把两者结合起来呢?启动项目包含如下文件
错误.剃须刀apply.剃须刀等.
Blazor WebAssembly对于简单的脱机应用程序可以是独立的,但单独的服务器项目可以释放更高的安全性、可伸缩性、复杂的服务器任务和潜在的脱机功能,使其成为更复杂和要求更高的应用程序的理想 Select .但如果将它们结合在一起,复杂性会增加,这可能会使应用程序更难管理.如果你从design pattern point of view个方面来看,鼓励解耦或松散耦合的应用程序,而不推荐紧密解耦的应用程序.
因此,随着应用程序的增长或需要服务器端功能,在这些情况下,拥有单独的服务器项目可提供可伸缩和可维护的体系 struct ,最好以这种方式拆分项目.
但是为什么需要一个单独的服务器来托管Web呢
集合?它对Web Assembly客户端有什么改进?当我们
创造独立的夹克衫,它没有这个功能.我只是好奇
这一部分,因为API端点是不言而喻的
正如前面所说的,这是因为可维护的设计或架构模式.如果你的应用程序主要是显示信息和处理用户交互,而不需要复杂的服务器端逻辑,那么独立的方法是有效的,并避免了托管成本.但是,尽管离线访问受到API可用性的限制,但一些功能仍然可以在没有互联网连接的情况下工作.
除此之外,服务器还可以充当访问后端API的代理.这通过将敏感的API凭据和逻辑保留在服务器上并仅向客户端公开特定的数据点来增强安全性.因此,虽然独立的Blazor WebAssembly提供了简单性和离线功能,但服务器项目显着改进.
Note:虽然它造成了一些混乱,但在架构上,它提供了很多好处.然而,它完全取决于需求、场景和要求.另外,请给我have a look at this official documents美元.