有人可以告诉我这个代码有什么问题吗?

受保护的void button1_click(对象发送者,EventArgs e){使用(spweb owebsiteroot = spcontext.current.site.site.rootweb){

            SPList oList = oWebsiteRoot.Lists["Tasks"];

            SPQuery oQuery = new SPQuery();
            oQuery.Query = "<Where><Eq><FieldRef Name='Status'/>" +
                "<Value Type='Text'>Completed</Value></Eq></Where>";
            SPListItemCollection collListItems = oList.GetItems(oQuery);

            foreach (SPListItem oListItem in collListItems)
            {
                Response.Write(SPEncode.HtmlEncode(oListItem["Title"].ToString()) +
                    "<BR>");
            }
        }

    }
有帮助吗?

解决方案

基本上,如果您使用的是spcontext,则不应处置rootweb。微软已更新了最佳实践

这是一个示例提及

http://blogs.msdn.com/b/rogerla/archive/2008/10/04/updated-spsite-rootweb-dispose-guidance.aspx

其他提示

您是否处置了使用Spcontext对象进行的任何SPWEB或SPSITE对象?如果是这样,那么您就不必处置其中任何一个。

许可以下: CC-BY-SA归因
scroll top