加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

asp.net-mvc – WebService还是一个简单的MVC控制器?

发布时间:2020-12-15 21:04:44 所属栏目:asp.Net 来源:网络整理
导读:我需要提供(对我自己)从数据库中获取一些数据的方法,以便我可以轻松地构建静态html页面,这样我就可以减轻处理它们的服务器(因为我每天浪费80Gb的带宽). 我的问题很简单 我应该创建一个WCF服务(或ASMX Web服务)来提取这些数据(WCF将在同一台服务器上,所以我仍
我需要提供(对我自己)从数据库中获取一些数据的方法,以便我可以轻松地构建静态html页面,这样我就可以减轻处理它们的服务器(因为我每天浪费80Gb的带宽).

我的问题很简单

我应该创建一个WCF服务(或ASMX Web服务)来提取这些数据(WCF将在同一台服务器上,所以我仍然使用它,但更少,因为我只是得到我真正需要的东西,不要浪费处理页面)

或者我应该创建一个简单的控制器,如:

public class ServiceApiController : Controller
{
    public ActionResult GetPrizes(string calendarGuid)
    {
        return Json("...");
    }
    public ActionResult GetWinners(string calendarGuid)
    {
        return Json("...");
    }
    public ActionResult AddSubscriber(string calendarGuid,string[] args)
    {
        return Json("...");
    }
    public ActionResult ReclaimSubscriberEmail(string calendarGuid,string email)
    {
        return Json("...");
    }
    public ActionResult RequestContact(string calendarGuid,string[] args)
    {
        return Json("...");
    }
}

并且直接从我将使用的任何Javascript框架中调用它(错误,当然我可爱的jQuery).

解决方法

要看. WCF服务更灵活,因为您不必依赖HTTP,而是可以使用直接TCP连接,我相信它很容易让它暴露SOAP.只是行为,端点等的web.config设置比它应该更复杂.

另一方面,MVC可能更快地设置,因为您不必处理有时有点难以更改DataContracts(因为它们需要重新部署共享程序集).

WCF =更“坚实”,有更多协议使其“稳定”,即:您可以在提供者和消费者之间建立硬合约.

MVC =更灵活,可能更容易设置,但没有硬合同 – 如果你改变Json的格式,你的客户可能会在没有你最初注意到它的情况下破坏,所以它可以更多地跟上东西.

总的来说,我使用MVC,除非我有理由使用上面概述的WCF(客户端和服务器之间的稳定/保证/可发现合同的要求,要求使用SOAP,或者设置IIS网站时不方便/不必要)因为我的服务器作为Windows服务运行)

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读