.NET_STAR

打造技术团队,愿与您共同开创事业!

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: :: 管理 ::

1、操作列表批量删除列表项 

代码
#region 批量删除
                    
//查询出所要删除的列表项
                    query.Query = @"<Where><Eq><FieldRef Name='" + list.Fields["RoleID"].InternalName + @"'/>
                                        <Value Type='Text'>
" + this.RoleID + "</Value></Eq></Where>";    //查询条件
                    SPListItemCollection items = list.GetItems(query);
 
                    StringBuilder sbDelete 
= new StringBuilder();
                    sbDelete.Append(
"<?xml version=\"1.0\" encoding=\"UTF-8\"?><Batch>");
                    
foreach (SPListItem item in items)
                    {
                        sbDelete.Append(
"<Method>");
                        sbDelete.Append(
"<SetList Scope=\"Request\">" + list.ID + "</SetList>");
                        sbDelete.Append(
"<SetVar Name=\"ID\">" + Convert.ToString(item.ID) + "</SetVar>");
                        sbDelete.Append(
"<SetVar Name=\"Cmd\">Delete</SetVar>");
                        sbDelete.Append(
"</Method>"); 
                    } 
                    sbDelete.Append(
"</Batch>");
                    
//删除操作
                    sweb.ProcessBatchData(sbDelete.ToString());   
                    
                    
#region 注释循环删除列表项
                    
//for (int i = 0; i < items.Count; i++)
                    
//{
                    
//    //aa += items[i]["ModuleID"].ToString() + "<br>";
                    
//    //items[i].Delete();
                    
//    items[i].de();
                    
//}
                    #endregion 

                    
#endregion

 

2、循环添加列表项

  

代码
#region 批量添加 
                    
string strModuleID = this.txt_ModuleID.Value.Trim();  
                    
if (!strModuleID.Equals(""))
                    {
                        SPListItem sListItem
=null;
                        
string[] moduleIDList = strModuleID.Split(',');
                        
foreach (string moduleID in moduleIDList)
                        {
                            sListItem 
= list.Items.Add();           
                            sListItem[
"aa"= this.aa;      
                            sListItem[
"bb"= bb;       
                            sListItem.Update();                     
                        }
                    }
                    
#endregion

 

3、Linq查询几点(多表联合查询、In子查询、过滤重复记录)

  

代码
 this.PersonNameCollection = "小李,小王";
            DataTable dtPerson 
= web.Lists["Person"].Items.GetDataTable();
            DataTable dtCustion 
= web.Lists["Custion"].Items.GetDataTable();
            DataTable dtPersonCustion 
= web.Lists["PersonCustion"].Items.GetDataTable();
            var qList 
= (from Person in dtPerson.AsEnumerable()
                         join PersonCustion 
in dtPersonCustion.AsEnumerable() on Person.Field<string>("PersonID") equals PersonCustion.Field<string>("PersonID")
                         join Custion 
in dtCustion.AsEnumerable() on PersonCustion.Field<string>("CustionID") equals Custion.Field<string>("CustionCode")
                         
where this.PersonNameCollection.Contains(Person.Field<string>("Title"))   //实现In子查询
                         orderby Custion.Field<string>("CustionCode")
                         select 
new
                         {
                             ParentCustionID 
= PersonCustion.Field<string>("CustionID").Substring(02),
                             CustionID 
= PersonCustion.Field<string>("CustionID"),
                             CustionName 
= Custion.Field<string>("Title"),
                             CustionURL 
= Custion.Field<string>("URL"
                         }).Distinct();   
//并返回不重复记录

 

 

posted on 2009-12-12 14:35  雷明  阅读(714)  评论(1)    收藏  举报