我正在寻求有关我的系统架构的帮助。让我概述一下:
我有一个通过一组 wcf 服务访问的 sql server 和 oracle 数据库。
这些 wcf 服务端点被许多 Web 应用程序使用。
所有应用程序都是用 .net c# 4.0 编写的。
现在需要移动应用程序(iphone 应用程序、android 应用程序)访问数据库提供的数据。
我的第一个问题是,向移动应用程序提供数据的最佳媒介是什么?我相信的选项包括通过我现有的 wcf 服务或一个包装器项目(调用现有的 wcf 服务)公开移动应用程序可以访问的 WebApi 或 MVC 控制器。针对移动应用程序消费的最佳方法的建议。考虑到移动应用程序需要小负载,并且还需要采取安全措施来防止未经授权的移动应用程序访问服务/包装器项目。
我的下一个问题是关于 WCF 服务的版本控制。我希望能够在不影响潜在包装器项目的情况下无缝更新 wcf 服务,反之亦然。由于第三方移动应用程序将处于不同的发布周期,因此需要支持多个版本。我预计这可能涉及部署应用程序的多个版本,但想知道通常如何处理这种做法?
所有应用程序都部署在 IIS 7.0 中的 Windows 服务器上。