У меня есть веб-метод (в рамках веб-службы SOAP) с сигнатурой:
public msgResponse myWebMethod([XmlAnyElement] XmlElement msgRequest)
Я решил использовать параметр XmlElement
после чтения , что позволитмне выполнить собственную проверку XSD для параметра.Проблема в том, что параметр может быть довольно большим (до 80 МБ XML), поэтому вызов XmlElement.OuterXML()
, как предлагается в ссылке, не очень практичный метод.
Есть ли другой способ проверки объекта XmlElement по XSD?
В более общем смысле, является ли это неподходящим подходом для реализации веб-службы, ожидающей больших объемов XML?Я сталкивался с некоторыми намеками на использование SoapExtensions для получения доступа к входному потоку напрямую, но не уверен, что это правильный подход для моей ситуации.
Примечание: К сожалению, яприкованный к существующему WSDL и XSD, который я не могу изменить, поэтому я пошел с реализацией без WCF.