1

过去一天,我一直在努力寻找一种方法来生成 WCF 服务,该服务实际上维护了原始 XSD 中定义的限制。基本问题是,如果我使用包含限制(例如模式)的 XSD 构建合同优先服务,则限制会从部署服务时输出的 WSDL/XSD 中删除。

这是其他人抱怨同样的问题: http: //geekswithblogs.net/wojan/archive/2010/12/10/143086.aspx

我只剩下我认为的 2 个选项:

  • 我可以替换 Web 服务器(IIS 或 IIS Express)上生成的服务 WSDL/XSD
  • 我可以用另一个正确支持 XSD 限制的第 3 方序列化程序替换默认 XML 序列化程序吗?

想法?

4

1 回答 1

0

您可以按照这篇非常好的博客文章所做的操作来替换内置的 WCF 生成的 WSDL 。该帖子显示了如何覆盖默认的 WCF 行为,即为 XSD 生成包含引用,而不是创建单个“平面”WSDL 文档。

我看到的问题是您需要一种方法来传达此过程的其他 XSD 限制。很高兴您知道您还需要替换内置的 XML 序列化程序以在肥皂反序列化过程中获得严格的 XSD 合规性,因为这是实现您想要的唯一方法。考虑到您需要对 WCF 进行的所有深度自定义,您实际上可能想要考虑滚动您自己的自定义 SOAP 堆栈。我不知道有任何其他 .NET 框架(Microsoft 或第 3 方)这样做。

于 2013-01-31T21:25:44.833 回答