使用Asp.net mvc或Web服务会更好吗?

JD.*_*JD. 9 c# asp.net asp.net-mvc web-services

我有几年前编写的asp.net mvc应用程序,我添加的越多,我倾向于对控制器进行REST/AJAX调用以从中获取数据.

我的问题是,我是否继续以这种方式工作,还是应该将数据作为单独的REST服务(WCF处理方式)公开?

感觉mvc应用程序设计的界限和Web服务的设计越来越模糊.Mvc应用程序(除了分离)最初生成网页,现在它用于提供基于服务的数据.

JD

ole*_*sii 4

我看到两种可能的情况

单一网络应用程序。在这种情况下,您可以继续向控制器添加方法。这很好,因为它将与控制器功能相关的内容集中在一处,并且可以节省您的时间。如果控制器是从另一个 Web 应用程序调用的,则不适合。简单、丑陋但有效,只需很少的开发时间和大量的维护时间。

网络应用程序+网络服务。您可以将数据检索方法分离到服务接口中。积极的一面是您的系统变得更加模块化和独立,这有利于维护。如果您预测很快就会添加其他方法,或者这些方法被其他 Web 应用程序使用,那么此路径可能比扩展当前 Web 应用程序更好。不利的一面是,新服务将需要对当前的 Web 应用程序进行一些重构,并且需要时间来开发/测试等。这个决定带来了更多的复杂性,但使您的应用程序易于扩展。