行为和合同的区别是什么?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (19)

在WCF中,行为合约有什么区别?从检查配置文件来看,两者似乎都指向了服务功能的接口。为什么他们都需要?

提问于
用户回答回答于

科尔的笔记版本:

  • 合同规定了哪些服务实际上做。换句话说,什么操作是有效的。
  • 端点指定一个实际的运行实例的服务。正是在这意义上的实际的“服务” 来执行,无论是作为Windows服务或IIS下。
  • 服务行为定义端点如何与客户进行交互。像安全性,并发性,缓存,日志记录等属性 - 这些都是行为的一部分。
  • 还有一个操作行为类似于服务行为,但只有在特定操作运行时才会应用。

有关更多信息,我建议您从WCF体系结构概述开始

用户回答回答于

答案有点迟,但是

  • 因为我目前正在努力解决两者之间的差异
  • 因为这是谷歌首批成果之一
  • 因为目前的答案并没有给啊哈时刻

以下是简而言之,是什么让我感到轻松(cudo对Fred Yang)

服务合同

  • 影响客户端和服务器的行为
  • 可以适用于界面和类
  • 影响发出的WSDL

ServiceBehavior

  • 只影响服务器的行为
  • 仅适用于类实现
  • 不会影响WSDL

ServiceContract vs ServiceBehavior

在WCF中,ServiceContract属性影响客户端和服务器的行为,而ServiceBehavior仅影响服务器的行为。ServiceContract可以应用于接口和类,但ServiceBehavior只能应用于类实现。ServiceContract会影响发出的wsdl,但ServiceBehavior不会影响发出的wsdl。

扫码关注云+社区