2009-05-08 9 views
0

Ich erhalte die Fehlermeldung:Fehler beim XML-Daten aus einem Sharepoint Web Service ruft in einen ASP.NET-Gridview laden

Illegal characters in path.

wenn XML zu laden versuchen, mithilfe von XPath, in eine Datasource des Gridview in der PageLoad-Funktion im Code-Behind einer ASP.NET-Seite, die ich erstelle. Weiß jemand, was dieser Fehler bedeutet?

Die XML in dem Web-Services-Aufruf Sharepoint kommt, ist:

<?xml version='1.0' encoding='ISO-8859-1'?> 
<listitems xmlns:s="uuid:BDC6E3F0-6DA3-11d1-A2A3-00AA00C14882" xmlns:dt="uuid:C2F41010-65B3-11d1-A29F-00AA00C14882" xmlns:rs="urn:schemas-microsoft-com:rowset" xmlns:z="#RowsetSchema" xmlns="http://schemas.microsoft.com/sharepoint/soap/"> 
<rs:data ItemCount="2"> 
    <z:row ows_Attachments="0" ows_LinkTitle="testTitle" ows_IncidentID="0" .../> 
    <z:row ows_Attachments="0" ows_LinkTitle="test2" ows_IncidentID="1" ... /> 
</rs:data> 

Und mein Code hinter ist:

newNode = thisL.GetListItems(strID, viewName, query, viewFields, rowLimit, queryOptions, webID) 

    mNodeList = newNode.ChildNodes 
    Dim ds_me As New Data.DataSet 

    xdsIncidents.Data = "<?xml version='1.0' encoding='utf-8'?>" & newNode.OuterXml 
    xdsIncidents.XPath = "//z:row" 
    GridView1.AutoGenerateColumns = True 
    DataDiv.InnerText = xdsIncidents.Data 

    ds_me.ReadXml(xdsIncidents.Data) 
    Dim dv As New Data.DataView(ds_me.Tables(1)) 

    GridView1.DataSource = dv 
    GridView1.DataBind() 

Die Fehlermeldung wird auf der Linie kommen " ds_me.ReadXML ... "

+0

Was ist die eigentliche Fehlermeldung? Was hat xdsIncidents.Data tatsächlich als Wert? – RSolberg

Antwort

0

Dies liegt daran, dass diese Überladung von ReadXml eine Datei p erwartet ath, um etwas xml zu lesen, nicht eine Zeichenfolge mit xml drin.

Sie müssen einen XmlReader oder TextReader aus Ihrer Zeichenfolge erstellen, wenn Sie das DataSet auf diese Weise laden möchten.