WSS3SDK之:如何创建或删除列表
可以通过SPListCollection类的Add方法新建一个列表。
下面的样例会根据用户的输入,新建一个一般列表,日历或通知。Switch语句用于根据用户输入的列表类型设定列表的模板。
注意:
本样例中使用Microsoft.SharePoint.SPContent类成员来获取当前的网站集,网站和列表。在HTTP上下文以外,比如在命令行应用或Windows应用中,这种方式是没法用的。
VB
C#
本例中实例化了一个SPListTemplateType对象,用于存放用户指定的列表类型。该对象是Add方法的一个必要参数。该样例代码假设存在两个textbox,用于输入标题和描述。同时,还有一个drop-down list用于选择列表类型。
C#
下面的例子中,我们可以使用SPSite类的GetCustomListTemplates方法来返回特定站点中的自定义列表模板,然后我们会基于特定的一个列表模板新建一个列表。
VB
C#
如果要删除某列表,我们必须在Delete方法中指定列表的GUID。可以通过SPList类的ID属性得到GUID。
VB
该样例假设有一个textbox,用户可以指定要删除列表的名称。
下面的样例会根据用户的输入,新建一个一般列表,日历或通知。Switch语句用于根据用户输入的列表类型设定列表的模板。
注意:
本样例中使用Microsoft.SharePoint.SPContent类成员来获取当前的网站集,网站和列表。在HTTP上下文以外,比如在命令行应用或Windows应用中,这种方式是没法用的。
VB
Dim mySite As SPWeb = SPContext.Current.Web
Dim lists As SPListCollection = mySite.Lists
Dim listTitle As String = TextBox1.Text
Dim listDescription As String = TextBox2.Text
Dim listType As String = ListBox1.SelectedItem.Text
Dim listTemplateType As New SPListTemplateType()
Select Case listType
Case "Generic List"
listTemplateType = SPListTemplateType.GenericList
Exit
Case "Events"
listTemplateType = SPListTemplateType.Events
Exit
Case "Announcements"
listTemplateType = SPListTemplateType.Announcements
Exit
End Select
lists.Add(listTitle, listDescription, listTemplateType)
Dim lists As SPListCollection = mySite.Lists
Dim listTitle As String = TextBox1.Text
Dim listDescription As String = TextBox2.Text
Dim listType As String = ListBox1.SelectedItem.Text
Dim listTemplateType As New SPListTemplateType()
Select Case listType
Case "Generic List"
listTemplateType = SPListTemplateType.GenericList
Exit
Case "Events"
listTemplateType = SPListTemplateType.Events
Exit
Case "Announcements"
listTemplateType = SPListTemplateType.Announcements
Exit
End Select
lists.Add(listTitle, listDescription, listTemplateType)
C#
SPWeb mySite = SPContext.Current.Web;
SPListCollection lists = mySite.Lists;
string listTitle = TextBox1.Text;
string listDescription = TextBox2.Text;
string listType = ListBox1.SelectedItem.Text;
SPListTemplateType listTemplateType = new SPListTemplateType();
switch(listType)
{
case "Generic List":
{
listTemplateType = SPListTemplateType.GenericList;
break;
}
case "Events":
{
listTemplateType = SPListTemplateType.Events;
break;
}
case "Announcements":
{
listTemplateType = SPListTemplateType.Announcements;
break;
}
}
lists.Add(listTitle, listDescription, listTemplateType);
代码需要添加Microsoft.SharePoint命名空间。SPListCollection lists = mySite.Lists;
string listTitle = TextBox1.Text;
string listDescription = TextBox2.Text;
string listType = ListBox1.SelectedItem.Text;
SPListTemplateType listTemplateType = new SPListTemplateType();
switch(listType)
{
case "Generic List":
{
listTemplateType = SPListTemplateType.GenericList;
break;
}
case "Events":
{
listTemplateType = SPListTemplateType.Events;
break;
}
case "Announcements":
{
listTemplateType = SPListTemplateType.Announcements;
break;
}
}
lists.Add(listTitle, listDescription, listTemplateType);
本例中实例化了一个SPListTemplateType对象,用于存放用户指定的列表类型。该对象是Add方法的一个必要参数。该样例代码假设存在两个textbox,用于输入标题和描述。同时,还有一个drop-down list用于选择列表类型。
除了可以使用SPListTemplateType枚举来创建一个列表外,您也可以用SPListTemplate对象创建一个列表。SPWeb类的ListTemplates属性可以用于返回一个列表模板对象的集合,然后通过名称索引的方式指定要用的列表模板。下面的示例中将展示这种实现方法。该样例假定当前在一个会议工作区网站中。
VB
Dim mySite As SPWeb = SPContext.Current.Web
Dim template As SPListTemplate = mySite.ListTemplates("Decisions")
mySite.Lists.Add("My Decisions", "This is a list of decisions",
template)
Dim template As SPListTemplate = mySite.ListTemplates("Decisions")
mySite.Lists.Add("My Decisions", "This is a list of decisions",
template)
C#
SPWeb mySite = SPContext.Current.Web;
SPListTemplate template = mySite.ListTemplates["Decisions"];
mySite.Lists.Add("My Decisions", "This is a list of decisions",
template);
该代码需要引用Microsoft.SharePoint命名空间。SPListTemplate template = mySite.ListTemplates["Decisions"];
mySite.Lists.Add("My Decisions", "This is a list of decisions",
template);
下面的例子中,我们可以使用SPSite类的GetCustomListTemplates方法来返回特定站点中的自定义列表模板,然后我们会基于特定的一个列表模板新建一个列表。
VB
Dim siteCollection As SPSite = SPContext.Current.Site
Dim mySite As SPWeb = SPContext.Current.Web
Dim listTemplates As SPListTemplateCollection
= siteCollection.GetCustomListTemplates(mySite)
Dim listTemplate As SPListTemplate
= listTemplates("Custom List Template")
mySite.Lists.Add("Custom List", "A list created from
a custom list template in the list template catalog", listTemplate)
Dim mySite As SPWeb = SPContext.Current.Web
Dim listTemplates As SPListTemplateCollection
= siteCollection.GetCustomListTemplates(mySite)
Dim listTemplate As SPListTemplate
= listTemplates("Custom List Template")
mySite.Lists.Add("Custom List", "A list created from
a custom list template in the list template catalog", listTemplate)
C#
SPSite siteCollection = SPContext.Current.Site;
SPWeb mySite = SPContext.Current.Web;
SPListTemplateCollection listTemplates
= siteCollection.GetCustomListTemplates(mySite);
SPListTemplate listTemplate = listTemplates["Custom List Template"];
mySite.Lists.Add("Custom List", "A list created from
a custom list template in the list template catalog", listTemplate);
该代码需要引用Microsoft.SharePoint命名空间。SPWeb mySite = SPContext.Current.Web;
SPListTemplateCollection listTemplates
= siteCollection.GetCustomListTemplates(mySite);
SPListTemplate listTemplate = listTemplates["Custom List Template"];
mySite.Lists.Add("Custom List", "A list created from
a custom list template in the list template catalog", listTemplate);
如果要删除某列表,我们必须在Delete方法中指定列表的GUID。可以通过SPList类的ID属性得到GUID。
VB
Dim mySite As SPWeb = SPContext.Current.Web
Dim lists As SPListCollection = mySite.Lists
Dim list As SPList = lists(TextBox1.Text)
Dim listGuid As System.Guid = list.ID
lists.Delete(listGuid)
C#
Dim lists As SPListCollection = mySite.Lists
Dim list As SPList = lists(TextBox1.Text)
Dim listGuid As System.Guid = list.ID
lists.Delete(listGuid)
SPWeb mySite = SPContext.Current.Web;
SPListCollection lists = mySite.Lists;
SPList list = lists[TextBox1.Text];
System.Guid listGuid = list.ID;
lists.Delete(listGuid);
该代码需要引用Microsoft.SharePoint命名空间。SPListCollection lists = mySite.Lists;
SPList list = lists[TextBox1.Text];
System.Guid listGuid = list.ID;
lists.Delete(listGuid);
该样例假设有一个textbox,用户可以指定要删除列表的名称。
分类:
SharePoint
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 零经验选手,Compose 一天开发一款小游戏!
· 一起来玩mcp_server_sqlite,让AI帮你做增删改查!!