Sharepoint:尝试获取包含已删除项目的最高ows_ID

时间:2011-12-08 12:32:23

标签: sharepoint

我正在使用SharePoint网络服务,并尝试从列表中返回最高的ID号。我的情况就像是说我在列表中有10个项目。此时最高的ows_ID是10.现在,如果我删除一个项目并检查ows_ID的最大值,我得到9,但是最高的ows_ID是10,包括删除。

如果插入了一个新项目,它会将ows_ID变为11而不是10.同样,即使该项目被删除,是否可以获得最高的ows_ID?

2 个答案:

答案 0 :(得分:0)

您可以调用GetList查看使用的最高ID。该方法返回有关列表本身的信息,而不是其中的项目。

答案 1 :(得分:0)

尝试“rowLimit”,配置你的CAML来做你的东西,只获得搜索条件中的第一项:

                string rowLimit = "1";
                System.Xml.XmlDocument xmlDoc = new System.Xml.XmlDocument();
                System.Xml.XmlElement query = xmlDoc.CreateElement("Query");
                System.Xml.XmlElement viewFields = xmlDoc.CreateElement("ViewFields");
                System.Xml.XmlElement queryOptions = xmlDoc.CreateElement("QueryOptions");
                query.InnerXml = "<Where><Eq><FieldRef Name=\"FileLeafRef\"/><Value Type=\"" + fieldType + "\">" + fieldValue + "</Value></Eq></Where> ";
                viewFields.InnerXml = "<FieldRef Name=\""+fieldToGet+"\" />";
                queryOptions.InnerXml = "";
                System.Xml.XmlNode nodes = myservice.GetListItems(listGuid, viewGuid, query, viewFields, rowLimit, null, null);

在下面的示例中,我只使用一些条件获取最后创建的项目,但由于您不需要此项,只需在我的代码中修复caml。