【问题标题】:Combine WCF and WCF DataService结合 WCF 和 WCF 数据服务
【发布时间】:2012-02-21 10:50:07
【问题描述】:

我希望创建一个位于 Window 窗体客户端和 SQL 2008R2 数据库之间的应用程序对象服务器,它处理应用程序业务规则并支持 CRUD,我过去通过 WCF 和 WCF 数据服务实现了这一点,它会是如果我们可以将这两种 WCF 合二为一,那就更好了。 你知道有什么方法可以实现吗?或者我们应该回到 WinSock 日。

等待你的想法

【问题讨论】:

    标签: wcf architecture wcf-data-services


    【解决方案1】:

    WCF 数据服务基于 REST 风格的 WCF 服务 (webHttpBinding) - 因此它们与传统的 SOAP 风格的 WCF 绑定有着根本的不同。

    我看不出您可以如何轻松地将 WCF 数据服务与传统的 SOAP WCF 服务结合起来(假设您正在尝试这样做)。

    你可以做的是:

    • 创建实体数据模型作为两种服务的基础
    • 在该 EDM 之上创建 WCF 数据服务
    • 分别创建一组 WCF SOAP 服务方法,基于同一个 EDM

    但是 SOAP 和 REST 在非常基本的层面上是完全不同的:

    • REST 倾向于使用 resources - 您有一个 Customer(也在您的 URL 中),您可以获取它、编辑它、更新它、删除它

    • 另一方面,SOAP 更倾向于与操作一起工作——你有你的客户,但随后你公开了诸如GetCustomerUpdateCustomer 等方法——你的基本构建块是带参数的方法

    【讨论】:

    • 感谢您的回复,您的建议正是我所做的,我只是觉得如果有一种技术可以做资源+操作,WCF 和 WCF 数据服务,我会很高兴跨度>
    • 对于net tcp和window forms,我们似乎没有一种WCF等于WCF + WCF DataService。
    • @user1092875:不,正如我所说的 - 你有两种截然不同的 WCF 风格 - SOAP(原始)和新的 REST(WCF 数据服务基于此)。 WCF 作为一种技术同时支持这两种技术——但它们的感觉和感觉有很大不同
    • 它不仅在风格上不同,而且在应用程序编程支持方面也有所不同,例如您可以使用 dataservice 进行 CRUD,但使用原始 WCF 太难了,无法使用 TCP with dataservice.. . 仅举几例。很多人都在谈论 WCF,似乎人们没有在关键业务应用中使用该技术。我们决定从头开始编写我们的应用程序,这很困难但值得,我们过去使用 WCF,我们只是迷路了,因为它的技术似乎没有相互结合,我们现在正在从头开始编写并且从长远来看,我们感到更有信心
    猜你喜欢
    • 2013-11-25
    • 1970-01-01
    • 2011-04-22
    • 1970-01-01
    • 1970-01-01
    • 2013-12-20
    • 2011-03-02
    • 2013-10-08
    • 1970-01-01
    相关资源
    最近更新 更多