GetListItems查询SHAREPOINT中列表数据,报SoapServerException的异常
想请教一个关于使用CAML从SHAREPOINT中查询列表数据的问题,请帮忙看下下面的源代码,GetListItems方法的第三个参数查询语句为null的话,就有正常数据返回,但如果换上我编的CAML查询语句的话,就会报SoapServerException的异常,调试查看InnerException显示的是null,实在找不出来问题出在哪,请各位高手帮忙指正一下,谢谢。
int count=20;
XmlElement query = xmlDoc.CreateElement("Query");
XmlElement viewFields = xmlDoc.CreateElement("ViewFields");
XmlElement queryOptions = xmlDoc.CreateElement("QueryOptions");
query.InnerXml = "<Where><IsNotNull><FieldRef Name='ows_ID' /></IsNotNull></Where>";
viewFields.InnerXml = "";
queryOptions.InnerXml = "";
XmlNode xmlNode = webLists.GetListItems(listName, viewName, null, viewFields, count.ToString(), null, null);
[解决办法]
你把OWS_ID改成ID试试。
[解决办法]
不是的,外部名称和内部名称都是人为定义的.没有规律可循,有程序员自己设计.
比如,我用ID做internal name,为了编程时简洁,想用外部名字Identifier 显示在列表界面上和输入界面上,为了对用户友好。
CAML只认internal name,且internal name只对SharePoint 开发人员可见。
可以用spcamlqueryhelper查看:
http://spcamlqueryhelper.codeplex.com/releases/view/84520