2009-05-08 2 views
0

을 부르는 셰어 웹 서비스에서 XML을로드 할 때 :오류가 나는 오류를 받고 있어요하는 ASP.NET의 GridView

Illegal characters in path.

에있는 gridview의 데이터 소스에, XPath를 사용하여 XML을로드하려고 PageLoad 함수는 내가 만들고있는 ASP.NET 페이지의 코드 숨김에 있습니다. 누구든지이 오류의 의미를 알고 있습니까?

의 SharePoint 웹 서비스 호출에서 오는 XML은 다음과 같습니다

<?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> 

그리고 내 코드 뒤에 다음과 같습니다

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() 

오류 메시지가 줄에 올라오고있다 " ds_me.ReadXML ... "

+0

실제 오류 메시지는 무엇입니까? xdsIncidents.Data에는 실제로 값으로 무엇이 있습니까? – RSolberg

답변

0

이것은 ReadXml의 오버로드가 파일 p를 예상하기 때문에 발생합니다 ath는 xml을 읽으며 xml을 포함하는 문자열을 읽지 않습니다.

이렇게하면 DataSet을로드하려면 문자열에서 XmlReader 또는 TextReader를 만들어야합니다.

관련 문제