gpt4 book ai didi

c# - 基于 REST 的 MVC 站点和/或 WCF

转载 作者:行者123 更新时间:2023-11-30 16:26:10 24 4
gpt4 key购买 nike

我知道实际上有很多与此类似的问题,但我找不到能准确回答我的问题的问题。

我正在构建一个 Web 应用程序,它将

  • 明显地向用户显示数据 :)
  • 拥有供经过身份验证的用户使用的公共(public) API
  • 稍后移植到移动设备

所以,我坚持设计。我将为该网站使用 asp.net MVC,但我不确定之后如何构建我的架构。

我应该:

  • 使网站 RESTful 并充当 API
    • 在我的初步审查中,GET 返回完整 View 而不仅仅是数据,在我看来这似乎扼杀了公共(public) API 的想法
    • 还有,我真的应该在我的 Controller 中执行业务逻辑吗?为了能够扩展,在另一台服务器上有一个单独的业务逻辑层不是更好吗,或者我是否会考虑将我的 MVC 站点推送到另一台服务器,它会解决同样的问题?我正在尝试创建一个 SOLID设计,因此将它抽象为一个单独的服务似乎也更好(我可以调用另一个类,但随后我又回到了可伸缩性问题......)
  • 使网站不是 RESTful,并创建网站将使用的 RESTful WCF 服务
  • 使网站和 WCF 服务都保持安静,但这似乎是多余的

我对 REST 还很陌生,所以这个问题可能是我的误解。希望我能很好地解释这一点,但如果没有,如果您需要任何澄清,请告诉我。

最佳答案

我会在其上创建一个单独的业务逻辑层和一个(restful)WCF 层。这将您的 BLL 与您的客户端分离。您甚至可以让不同的客户端使用相同的 API(并不是说您应该或将会这样做,但它为您提供了灵 active )。理想情况下,您的服务层不应返回您的域实体,而是返回数据传输对象(您可以使用 Automapper 进行映射),尽管这取决于您项目的范围和规范。

将它放在另一台服务器上使其成为不同的层,层 <> 层。

关于c# - 基于 REST 的 MVC 站点和/或 WCF,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9100669/

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