我正在使用此代码使用List WebService从sharepoint 2010上名为Tech Experience的资产库中获取项目列表。
ListService.Lists objLists = new ListService.Lists();
objLists.Credentials = Constant.credentials;
objXMLDocument = new XmlDocument();
objXMLDocument.LoadXml("<QueryOptions><IncludeMandatoryColumns>FALSE</IncludeMandatoryColumns><Folder>Tech Experience</Folder><ViewAttributes Scope=\"RecursiveAll\" /></QueryOptions>");
XmlNode objQueryOptions = objXMLDocument.DocumentElement;
resultXml = objLists.GetListItems("Tech Experience", null, null, null, "100", objQueryOptions, null);
在执行给定代码中的最后一行时,它会抛出此错误“xml Document中的错误”。
但是,如果我在loadxml中更改资产库(即从技术Exprience更改为其他东西),它可以正常工作。
我发现到目前为止,此资产库中可用项目的描述包含一些特殊字符,如(',“,&lt;,&gt;,&amp;),这些字符会产生问题。
如果我错了,请纠正我。
我不能要求我的客户在上传新文件时不要使用这些字符。
请建议我如何克服这个问题。
如果可能,我会更喜欢c#部分的解决方案。
答案 0 :(得分:1)
如果我理解正确,您的客户端会向您发送包含无效XML的XML文件。这些字符在XML中具有转义序列;你确定你不能要求你的客户使用它们并向你发送结构良好的XML吗?
答案 1 :(得分:0)
“技术体验”列表名称...您确定使用的是内部列表名称而不是显示名称吗?