Home All Groups Group Topic Archive Search About
Author
13 Feb 2006 8:01 PM
OpticTygre
How can I make the following code synchronous?  TIA.

Public Sub ValidateXMLAgainstSchema(ByVal XSchema As XmlSchema, ByVal XData
As String)

Dim XSchemaset As XmlSchemaSet = New XmlSchemaSet

XSchemaset.Add(XSchema)

Dim XSettings As XmlReaderSettings = New XmlReaderSettings

XSettings.ValidationType = ValidationType.Schema

XSettings.Schemas = XSchemaset

Dim xStringReader As StringReader = New StringReader(XData)

Dim XReader As XmlReader = XmlReader.Create(xStringReader, XSettings)

AddHandler XSettings.ValidationEventHandler, AddressOf ValidationCallBack

While XReader.Read

'If there are errors, an asynchronous call would be made to the

'ValidationCallBack sub. How can we make this synchronous, so this

'sub can be made a function which would return a boolean, or a collection

'of ValidationEventArgs that we could return?

End While

End Sub

Private Shared Sub ValidationCallBack(ByVal sender As Object, ByVal e As
ValidationEventArgs)

MessageBox.Show("Error occurred. " & e.Message, "Validation Error",
MessageBoxButtons.OK, MessageBoxIcon.Error)

End Sub

Author
14 Feb 2006 10:29 PM
DWS
Async,

I did that this morning found it somewhere don't remember, maybe you can
help with this delima since your working with xml.  I can't get treeview to
work with xmldatasource when I have xmlns attribute in the xmlfile.

private _valid as boolean
Private Sub ValidationCallBack(ByVal sender As Object, ByVal e As
ValidationEventArgs)
            _valid = False
End Sub

Public Function ValidateXMLAgainstSchema(ByVal XSchema As XmlSchema, ByVal
XData  As String) as boolean
_valid = true
....
same code as in sub validatexmlagainstschema
....
return _valid
end function

It appears to be working for me but no guarantees.
Good Luck
DWS


Show quoteHide quote
"OpticTygre" wrote:

> How can I make the following code synchronous?  TIA.
>
> Public Sub ValidateXMLAgainstSchema(ByVal XSchema As XmlSchema, ByVal XData
> As String)
>
> Dim XSchemaset As XmlSchemaSet = New XmlSchemaSet
>
> XSchemaset.Add(XSchema)
>
> Dim XSettings As XmlReaderSettings = New XmlReaderSettings
>
> XSettings.ValidationType = ValidationType.Schema
>
> XSettings.Schemas = XSchemaset
>
> Dim xStringReader As StringReader = New StringReader(XData)
>
> Dim XReader As XmlReader = XmlReader.Create(xStringReader, XSettings)
>
> AddHandler XSettings.ValidationEventHandler, AddressOf ValidationCallBack
>
> While XReader.Read
>
> 'If there are errors, an asynchronous call would be made to the
>
> 'ValidationCallBack sub. How can we make this synchronous, so this
>
> 'sub can be made a function which would return a boolean, or a collection
>
> 'of ValidationEventArgs that we could return?
>
> End While
>
> End Sub
>
> Private Shared Sub ValidationCallBack(ByVal sender As Object, ByVal e As
> ValidationEventArgs)
>
> MessageBox.Show("Error occurred. " & e.Message, "Validation Error",
> MessageBoxButtons.OK, MessageBoxIcon.Error)
>
> End Sub
>
>
>