我有一个WCF使用.Net 4.0框架的SOAP Web服务.我正在使用contract first方法 - 即服务代码是使用WCSF Blue工具从手写WSDL生成的.
我对请求消息有以下要求.
如果价格低于100,则必须没有税元素,但如果它超过100,则需要纳税元素.
在XPath中,表达式如下
//t:price[. < 100][not(following::t:tax)] or
//t:price[. >=100][following::t:tax]
Run Code Online (Sandbox Code Playgroud)
我可以在服务的C#代码中处理它.但我想使用任何XML技术在WSDL本身中定义规则.这将有助于客户端了解输入消息应该满足的业务验证.(这是业务规则的定义,其实现在WSDL本身;不会将其他文档共享给客户端.)
在WCF中实现它的最佳方法是什么?WSDL我可以在哪个部分定义,XML validations以便它将被处理WCF?
在下面给出的前两个参考文献中,提到了一种关于XPath和C#处理程序(用于Web服务框架)的方法.我们不能在WCF中这样做吗?C#不能从WSDL读取XPath吗?怎么做?任何参考?
注意:我可以执行C#处理程序; 但business logic对于validation应该在XML
参考
小智 1
我认为您不能在 WSDL 本身中执行此操作,但您可以插入一个处理程序,在分派用户代码之前执行验证。
有一个 Enterprise Library 块可以处理此类验证,当然您也可以自行构建并将其添加到 WCF 堆栈中。
| 归档时间: |
|
| 查看次数: |
1714 次 |
| 最近记录: |