WSS3SDK之:如何添加和删除列表项

本文介绍如何使用Microsoft SharePoint的API在SharePoint列表中添加和删除条目。通过示例代码展示了如何利用SPListItem和SPListItemCollection类实现这些操作。

添加条数据到列表中可以通过SPListItemCollection类的Add方法创建一个列表项对象,然后调用SPListItem类的Update方法将新项写入数据库。
下面的例子假设有5个textbox,一个用来指定要添加到的列表的名称,另外4个用于指定添加的值。通过索引从这5个输入源中收集信息。
注意
本样例中使用Microsoft.SharePoint.SPContent类成员来获取当前的网站集,网站和列表。在HTTP上下文以外,比如在命令行应用或Windows应用中,这种方式是没法用的。

VB

Dim  mySite  As  SPWeb  =  SPContext.Current.Web
Dim  listItems  As  SPListItemCollection 
    
=  mySite.Lists(TextBox1.Text).Items

Dim  item  As  SPListItem  =  listItems.Add()

item(
" Title " =  TextBox2.Text
item(
" Stock " =  Convert.ToInt32(TextBox3.Text)
item(
" Return Date " =  Convert.ToDateTime(TextBox4.Text)
item(
" Employee " =  TextBox5.Text

item.Update()


C#

SPWeb mySite  =  SPContext.Current.Web;
SPListItemCollection listItems 
=  mySite.Lists[TextBox1.Text].Items;

SPListItem item 
=  listItems.Add();

item[
" Title " =  TextBox2.Text;
item[
" Stock " =  Convert.ToInt32(TextBox3.Text);
item[
" Return Date " =  Convert.ToDateTime(TextBox4.Text);
item[
" Employee " =  TextBox5.Text;

item.Update();
}

代码首先通过集合的Add方法创建了一个SPListItem对象。然后通过在列表项上使用索引指定字段的值。比如,item["Title"]指定了列表项标题栏的值。最后,代码调用该列表项的Update方法将变更写回数据库。
上面的例子需要引用Microsoft.SharePoint命名空间。

如果要创建的列表项包含将被保留的元数据,我们可以用Author,Editor,CreatedModified字段作为索引(indexer),其中AuthorEditor要指定一个WSS用户ID。详细的例子可参考SPListItem类。

如果要从列表中删除项目,我们可以用SPListItemCollection类的Delete方法,该方法需要集合的Index作参数。

VB

Dim  mySite  As  SPWeb  =  SPContext.Current.Web
Dim  listItems  As  SPListItemCollection 
    
=  mySite.Lists(TextBox1.Text).Items
Dim  itemCount  As   Integer   =  listItems.Count
Dim  k  As   Integer

For  k  =   0   To  itemCount  -   1
    
Dim  item  As  SPListItem  =  listItems(k)

    
If  TextBox2.Text  =  item( " Employee " ).ToString()  Then
        listItems.Delete(k)
    
End   If
Next  k


C#

SPWeb mySite  =  SPContext.Current.Web;
SPListItemCollection listItems 
=  mySite.Lists[TextBox1.Text].Items;
int  itemCount  =  listItems.Count;

for  ( int  k = 0 ; k < itemCount; k ++ )
{
    SPListItem item 
=  listItems[k];

    
if  (TextBox2.Text == item[ " Employee " ].ToString())
    {
        listItems.Delete(k);
    }
}

基于两个textbox中的输入信息,该代码遍历了指定列表的数据项集合,删除Employee字段为指定值的数据项。
上面的例子需要引用Microsoft.SharePoint命名空间。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值