Проверка запроса WCF с использованием XML
у меня естьWCF
SOAP веб-сервис, использующий .Net 4.0 framework. я используюcontract first
подход - т.е. сервисный код генерируется из рукописного WSDL с использованием инструмента WCSF Blue.
У меня есть следующее требование о сообщении запроса.
Если цена меньше 100, не должно быть налогового элемента, но еслиЕсли значение больше 100, требуется налоговый элемент.
В XPath выражение будет следующим
//t:price[. < 100][not(following::t:tax)] or
//t:price[. >=100][following::t:tax]
Я могу справиться с этим в C # код службы. Но я бы хотел определить это правило в самом WSDL, используя любую технологию XML. Это поможет клиенту узнать, что такое бизнес-проверка, которой должно соответствовать входное сообщение. (Это определение бизнес-правила, и его реализация находится в самом WSDL; никакой другой документации не следует делиться с клиентом.)
Каков наилучший способ добиться этого в WCF? Под каким разделом вWSDL
Я могу определитьXML validations
так что будет обрабатываться?WCF
В первых двух ссылках, приведенных ниже, упоминаетсяXPath
и обработчики C # (для Web Services Framework). Можно'мы делаем это в WCF? Можно't C # читать XPath из WSDL? Как это сделать? Любые ссылки?
Заметка: Я в порядке, чтобы иметь обработчики C # для выполнения; ноbusiness logic
заvalidation
должен быть вXML
Ссылка
Расширение ASP.NET WebMethod Framework с проверкой бизнес-правил - Аарон Сконнард и Дэн СалливанОбработчики утверждений WS-Policy и WSE 2.0 - Аарон СконнардХартмут»s Box - Четыре принципа и обмен сообщениями XML с WCFПроверка сообщения с помощью схемы в WCFПроверка XML с помощью Schematron / XSD в C #Определение xml в xsd, где атрибут определяет возможное содержимое