WCF / WSDL服务版本

| 我正在寻找一种版本服务的方法。 到目前为止,我们已经建立了宽松的版本控制原则。对于次要版本,我们保持向后兼容性。对于重大更改,我们强制使用新的主要版本。 对于主要版本,我们不介意更改服务的名称(我们可以更改名称空间,但是我们决定使用该名称)。 对于次要版本,我们不想更改名称或名称空间,因为那样会破坏依赖较早次要版本的客户端。 我的问题是:我们如何才能发现如何实施版本发现? WSDL中似乎没有放置“信息”的地方,不会破坏合同。我要采取的一种方法是,针对给定的环境(例如,阶段与生产),告诉您当前部署的服务版本是什么。 WSDL似乎很自然,因为它可以通过HTTP-GET(REST)进行访问,并且不需要引入非业务SOAP服务操作(例如int GetCurrentVersion())。 有任何想法吗?     
已邀请:
        WSDL确实具有包含\“ wsdl:document \”标记的功能,用于添加文档,但是对于编程访问,您可能想要自定义soap标头。这篇博客文章显示了如何使用自定义标题。 WCF Extras代码具有一些巧妙的行为,可以执行自定义的肥皂标题和wsdl文档标记。 @marc_s回答这个问题是另一种方法。     
        WSDL直接不具有任何此类功能,但是您可以创建自定义行为,例如,添加描述合同版本的“ 0”。在我的另一个答案中,添加了影响WSDL的自定义行为的描述。 MSDN上提供了操纵ѭ0的完整示例。     

要回复问题请先登录注册