【发布时间】:2010-06-18 10:49:01
【问题描述】:
由于 Silverlight 4,Microsoft 建议将 WCF RIA 服务 用于业务应用程序。是否存在 Silverlight 场景,其中不应使用 WCF RIA 服务,而纯 WCF 服务或 Web 服务或其他技术是更好的选择?
【问题讨论】:
标签: silverlight wcf-ria-services
由于 Silverlight 4,Microsoft 建议将 WCF RIA 服务 用于业务应用程序。是否存在 Silverlight 场景,其中不应使用 WCF RIA 服务,而纯 WCF 服务或 Web 服务或其他技术是更好的选择?
【问题讨论】:
标签: silverlight wcf-ria-services
现实情况是 WCF RIA 服务构建在 WCF 之上。这意味着您可以轻松构建(通过配置)公开多个端点的应用程序。因此,如果您需要的话,您可以在具有相同代码库的同一应用程序中使用 RIA 服务端点和 SOAP 端点。
这样,您可以获得与 Silverlight 应用程序集成的最简单途径,而其他 API 用户可以以方便他们的方式访问数据。
最终,OData 可能是您的最佳选择,因为它内置在 RIA 服务中(只需点击复选框!)而且它是一个开放的已发布标准。
【讨论】:
当然,Microsoft 也一直在推广 WCF 数据服务。在这种情况下,数据以 atom+xml 或 JSON 提要的形式公开,并通过符合 OData 协议的 RESTful HTTP 请求进行访问。这是 WCF RIA 服务的有效替代方案。作为一般规则,我建议在客户端不可知场景中使用 OData。因此,如果除了 Silverlight 客户端之外,您还想在 JavaScript、iPhone、Android 或 Excel (PowerPivot) 等其他平台上构建客户端,那么 WCF 数据服务就是您的最佳选择。
【讨论】:
根据我所见所闻,目前 WCF RIA 服务与 Silverlight 非常紧密地结合在一起。因此,如果您想将同一服务的业务逻辑公开给其他客户端,那么最好选择标准 WCF。
Grz,克里斯。
【讨论】: