Veröffentlicht 23. Juni 200916 j Hi Leute, steh heute irgendwie auf dem Schlauch. Ich möchte einen Returnwert in einer Messagebox ausgeben. Bekomme es aber irgendwie nicht hin. Ich habe folgende Funktion:Public Function ValidateXml(ByVal RawXml As String) As List(Of String) ErrorList = New List(Of String) If Me.Schemas.Count > 0 Then Dim ReaderSettings As New XmlReaderSettings() With ReaderSettings .ValidationType = ValidationType.Schema .ValidationFlags = XmlSchemaValidationFlags.ProcessSchemaLocation Or XmlSchemaValidationFlags.ReportValidationWarnings Or XmlSchemaValidationFlags.AllowXmlAttributes For Each SchemaPath As String In Me.Schemas .Schemas.Add(Nothing, XmlReader.Create(SchemaPath, Me.SchemaSettings)) Next AddHandler .ValidationEventHandler, SchemaValidation End With Using Reader As XmlReader = XmlReader.Create(New StreamReader(RawXml), ReaderSettings) '(New StringReader(RawXml), ReaderSettings) While Reader.Read() MsgBox(Reader.LocalName) MsgBox(Reader.Value) 'Lies das gesamte File und ruft die Validierungs Handler Subrutine auf, 'wenn ein Fehler gefunden wird. Auf diese Weise ist es möglich alle 'Fehler des XML-Files zu ermitteln, anstatt bei jedem Fehler zu stoppen. End While End Using End If Return ErrorList End Function diese befindet sich in der Klasse XMLValidator. Den Aufruf des Returnwerts in einer Messagebox habe ich folgendermaßen umgesetzt:MsgBox(openclass.ValidateXml(Pfad)) Kann mir jemand sagen, was ich falsch mache. Beste Grüße noobvb.net
23. Juni 200916 j Hi Klotzkopp, versuche es mal genauer zu beschreiben. Wenn ich die Messagebox so verwende, wie ich sie gepostet hab, dann bekomme ich eine Fehlermeldung und zwar folgende: "Das Argument Prompt kann nicht in den Typ String umgewandelt werden." Und mein Problem ist jetzt, dass ich keine Ahnung habe, wie ich auf den Returnwert der Funktion ValidateXml zugreifen soll. Beste Grüße noobvb.net
23. Juni 200916 j Wenn ich die Messagebox so verwende, wie ich sie gepostet hab, dann bekomme ich eine Fehlermeldung und zwar folgende: "Das Argument Prompt kann nicht in den Typ String umgewandelt werden." Offenbar kann also eine Liste von Strings nicht automatisch in einen einzelnen String umgewandelt werden. Und mein Problem ist jetzt, dass ich keine Ahnung habe, wie ich auf den Returnwert der Funktion ValidateXml zugreifen soll. Indem du die Strings in der Liste einen nach dem anderen anzeigst?
23. Juni 200916 j Hi Klotzkopp, vielen Dank für deine Hilfe. Das war die Lösung. Hab mich nur mal wieder etwas doof angestellt. Gruß
Archiv
Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.