Я пытаюсь написать общую функцию VB.NET (VS2005) для проверки XML-документа в отношении XSD. Это работает отлично, пока я использовать XSD с относительным путем включает в себя, как:Проверка XML с использованием нескольких XSD с использованием относительных путей в .NET.
<xs:include schemaLocation="test.02.xsd" />
Он никогда не может показаться, чтобы найти то, что входит в любых вторичных документах. Вот моя оригинальная функция ниже. Я играю с XmlUrlResolver(), но я тоже не могу добиться какого-либо прогресса. Любая помощь здесь будет принята с благодарностью.
Private Sub ValidatingProcess(ByVal XSDPath As String, ByVal XMLPath As String)
Try
Me.Reader = New XmlTextReader(XMLPath)
Dim SR As New StreamReader(XSDPath)
Dim Schema As New XmlSchema()
Schema = XmlSchema.Read(SR, New ValidationEventHandler(AddressOf ReaderSettings_ValidationEventHandler))
Dim ReaderSettings As New XmlReaderSettings()
ReaderSettings.ValidationType = ValidationType.Schema
ReaderSettings.Schemas.Add(Schema)
AddHandler ReaderSettings.ValidationEventHandler, AddressOf ReaderSettings_ValidationEventHandler
Dim objXmlReader As XmlReader = XmlReader.Create(Reader, ReaderSettings)
While objXmlReader.Read()
End While
Catch AccessEx As UnauthorizedAccessException
Throw AccessEx
Catch Ex As Exception
Throw Ex
End Try
End Sub