我正在开发一个 ASP.NET Web 应用程序,我想使用 MVP 创建清晰的体系结构。由于应用程序类型,存在从视图到网站后端的 AJAX 请求。我想知道如果我向 WebService(它将充当 Presenter)发出 AJAX 请求,它将使用模型控制业务逻辑并将结果作为序列化数据返回给视图,这是否是合法的 MVP?
提前致谢!
我正在开发一个 ASP.NET Web 应用程序,我想使用 MVP 创建清晰的体系结构。由于应用程序类型,存在从视图到网站后端的 AJAX 请求。我想知道如果我向 WebService(它将充当 Presenter)发出 AJAX 请求,它将使用模型控制业务逻辑并将结果作为序列化数据返回给视图,这是否是合法的 MVP?
提前致谢!
AJAX 不是在充当演示者吗?
如果我错了,请纠正我,但我曾经认为 Presenter 持有对 a 的引用Display
(这是视图的接口),因此会填充视图。然而,Web 服务被查询并返回一个结果,这在我看来就像一个 MVP 模型......
在 AJAX 的帮助下从您的网页调用 Web 服务没有任何违法行为。但是,我不确定是什么阻止您借助经典的 ASP.NET WebForms 应用程序设计出清晰的 MVP 架构?您可以构建非常轻量级的视图(例如,仅具有客户端 JavaScript / html 代码)并为您的视图创建一个 Presenter 类。
我的意见是:除非这是唯一可能的方法,否则我会尽量避免设计和托管 Web 服务来提供网页服务。当涉及到应用程序的部署和配置时,可能会出现问题。还要考虑身份验证等...另一个问题是:如何将您的功能拆分为服务以及您需要多少服务。