【问题标题】:Blazor hosting model for the Enterprise适用于企业的 Blazor 托管模型
【发布时间】:2019-11-08 01:34:02
【问题描述】:

我一直在积极跟进 Blazor,现在我想从我的工作场所获取一个企业应用程序,并将其转换为 Blazor,以保持企业的限制。我有很多问题,但我会非常专注:在托管方面我从什么模型开始。 ASP.Net 托管、服务器还是客户端?

这是我公司几乎所有最简单的应用程序都遵循的通用架构:

简而言之:

Web 门户和移动应用程序(通常也是网站)不能引用 ADO 或实体框架。它们只能具有服务端点的 URI。不允许直接访问数据库。如果可用,这些 UI 层必须缓存数据。

用户身份验证是联合的,我们使用 Okta。因此,单点登录 (SSO) 允许我获取用户标识符(域电子邮件)并将其传递回逻辑层以从数据库中获取匹配的身份验证。

WCF 客户端是使用 WcfClientProxyGenerator 自动生成的,并且取决于 Web 应用程序的应用设置来引入 URI。

WCF 服务具有所有实体框架引用和连接字符串。

Web 应用程序位于负载平衡的虚拟机对后面,而 WCF 服务(以及后面的一切)也是一对负载平衡的虚拟机

缓存是一个独立的服务器

在这样的环境下,我为 Blazor 选择了哪种托管模式?我的 Web 服务器不是基于云的,而是数据中心中的虚拟机。它们是带有 IIS 的 Windows Server 2016,在大多数情况下,IT 和网络安全期望在 IIS 上的应用程序池下运行标准 Web 应用程序。

另外,由于 Blazor 的性质,我允许某些 C# 代码可供客户端使用(查看源代码),但这应该只是格式化逻辑等类型代码。任何其他甚至暗示模型或数据被发回的东西都是不可取的(C# 或 Java)

我现在正在尝试了解服务器端和托管端。任何指导将不胜感激。

【问题讨论】:

    标签: blazor blazor-server-side


    【解决方案1】:

    您可能希望使用服务器端 Blazor。这是完全发生在服务器端的渲染模型,并使用一个小的运行时来更新客户端 DOM。

    这种 Blazor 模型意味着没有 C# 传递给我认为符合贵公司政策的客户端。

    我真的建议您阅读official site 上的所有文档。这一切都很好地解释了。

    【讨论】:

      【解决方案2】:

      Blazor 服务器端托管模型最适合企业以及您在问题中提到的要求。不过,我可能会把重点转移到 WCF 的使用上,因为 WCF 是一项古老的技术,你已经努力学习了,但是微软不会在 .Net Core 5 中支持它。开始思考 Web接口

      Blazor 服务器端和 Web Api 可以成为您如意项目的可行解决方案...

      希望这会有所帮助...

      【讨论】:

      • 我完全忘了提到 Blazor 不仅仅是 UI,大多数层都将被 .Net Standard 等价物取代,包括 Web API
      • WCF clients 已经在 Core 2 和 Core 3 上得到支持。WCF 服务器端在这里无关紧要,但它现在是一个社区项目,它将可用。跨度>
      猜你喜欢
      • 1970-01-01
      • 2013-08-20
      • 2017-02-04
      • 2023-03-17
      • 1970-01-01
      • 1970-01-01
      • 2021-01-05
      • 2019-01-01
      • 2012-05-02
      相关资源
      最近更新 更多