Validação de solicitação do WCF usando XML
eu tenho umWCF
Serviço da Web SOAP usando a estrutura .Net 4.0. estou usandocontract first
abordagem - isto é, o código de serviço é gerado a partir do WSDL escrito à mão usando a ferramenta WCSF Blue.
Eu tenho seguinte requisito sobre a mensagem de solicitação.
Se o preço for menor que 100, não deve haver um elemento de imposto, mas se for maior que 100, o elemento de imposto é obrigatório.
No XPath, a expressão será a seguinte
//t:price[. < 100][not(following::t:tax)] or
//t:price[. >=100][following::t:tax]
Eu posso lidar com isso no código c # do serviço. Mas eu gostaria de definir a regra no próprio WSDL usando qualquer tecnologia XML. Isso ajudará o cliente a saber qual é a validação de negócios que a mensagem de entrada deve atender. (Essa é a definição da regra de negócios e sua implementação está no próprio WSDL; nenhuma outra documentação deve ser compartilhada com o cliente.)
Qual é a melhor maneira de alcançá-lo no WCF? Em que seção doWSDL
Eu posso definir oXML validations
para que seja processado porWCF
?
Nas duas primeiras referências dadas abaixo, há uma abordagem mencionada sobreXPath
e manipuladores C # (para o Web Services Framework). Não podemos fazer isso no WCF? Não pode C # ler o XPath do WSDL? Como fazer isso? Alguma referência?
Nota: Eu estou bem para ter manipuladores de C # para executar; mas obusiness logic
paravalidation
deve estar emXML
Referência
Estenda o ASP.NET WebMethod Framework com o Business Rules Validation - por Aaron Skonnard e Dan SullivanWS-Policy e WSE 2.0 Assertion Handlers - por Aaron SkonnardCaixa de Hartmut - Os Quatro Princípios e Mensagens XML com o WCFValidação de mensagem com esquema no WCFValidação XML com Schematron / XSD em c #Definindo xml em um xsd onde um atributo determina o conteúdo possível