首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >反转SPlist

反转SPlist
EN

Stack Overflow用户
提问于 2012-07-10 17:58:20
回答 4查看 478关注 0票数 1

我需要以相反的顺序从列表中提取项(从最后一个条目到第一个条目)。我已经设法得到了所有的项目,但是,从第一项到最后一项。以下是我使用的代码的一部分:

该列表位于其他网站集中。

代码语言:javascript
复制
     using (SPSite oSite = new SPSite("urltolist"))
        {

            using (SPWeb oWeb = oSite.RootWeb)
            {
                SPList FItem = oWeb.Lists["List"];



                foreach (SPListItem item in FItem.Items)             
                {
                 //Display entries
                }
             }
       }
EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2012-07-10 18:03:05

在这种情况下,您不需要处理RootWeb。

代码语言:javascript
复制
using(var site = new SPSite("urltolist"))
{
    var list = site.RootWeb.Lists["List"];
    foreach(var li in list.Items.Cast<SPListItem>().Reverse().ToList())
    {
        // Display entries
    }
}
票数 2
EN

Stack Overflow用户

发布于 2012-07-10 18:02:48

获取SPListItemCollection,然后反向遍历它:

代码语言:javascript
复制
var itemCollection = FItem.Items;
for(int i = itemCollection.Count - 1; i >= 0; i--)
{
    var item = itemCollection[i];
    //Display entries
}

如果你只是迭代FItem.Items (即重复调用FItem.Items[i] ),你最终会重复查询列表,所以不要这么做。

票数 2
EN

Stack Overflow用户

发布于 2012-07-10 23:14:07

你需要问的问题是,项目的开始顺序是什么-你做的方式,它们将按ID排序(类似于创建时间)。如果您想用另一种方式对它们进行排序,可以使用带有OrderBy子句的SPQuery来检索列表项。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11410831

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档