gpt4 book ai didi

c# - 使用 Azure 应用服务的 Web 应用程序和移动客户端具有相同的业务逻辑

转载 作者:行者123 更新时间:2023-12-03 04:46:47 25 4
gpt4 key购买 nike

我正在研究一个需要 Web 应用程序和移动应用程序的应用程序,并正在考虑使用 Azure 应用服务。

在当前的实现中,我们需要在移动应用程序和 Web 应用程序中编写相同的逻辑。我想为两个端点使用相同的存储库和数据库。但我不想在两个不同的地方为业务逻辑编写相同的代码。

如何使用相同的存储库、数据库和业务逻辑混合 Web 应用程序和移动应用程序?

如果使用 Web API,我可以创建一个可以在 Web API 和 MVC 5 应用程序中使用的服务层。我想要一个类似的系统。

最佳答案

你已经得到了答案,即。使用 API。如果您在解耦架构中构建解决方案,您将能够编写任意数量的前端,并重用相同的后端服务。将 Web 应用程序和移动应用程序视为前端 - 它们应该是仅具有用于控制 UI 的最少逻辑的表示层,并且没有业务逻辑。以这种方式解耦的典型解决方案如下所示。使用接口(interface)来描述 API,这样您就可以轻松模拟、重构或重新设计后端服务,而不会影响使用 API 的应用程序。

sketch of decoupled architecture

  • 网络应用
  • 移动应用
  • API 项目(推荐 WebAPI/REST)
  • 服务接口(interface)
  • 业务服务(可重复使用、持久、稳健且经过充分测试/可测试)
  • 存储库(用于抽象数据库连接)
  • 其他抽象(网络服务、其他服务/系统)

因此,您的业务逻辑可以编写一次,并以接口(interface)和/或 REST api 为前端,由您单独的 Web 应用程序/移动应用程序调用。如果您使用 Web API 作为将应用程序连接到服务的机制,您将拥有业务服务的一个物理部署;如果您只使用接口(interface),则需要将二进制文件部署到每个实例(Web 应用程序、移动应用程序等)

关于c# - 使用 Azure 应用服务的 Web 应用程序和移动客户端具有相同的业务逻辑,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39674242/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com