SPSite:
1>SPSite site1 = new SPSite("http:/ /siteName");
2>SPSite site2 = new SPSite("http:/ /siteName"); //使用绝对URL实例化SPSite对象
3>SPSite site3 = new SPSite(new Guid("ba3d975e-d956-43da-955b-52fcb1309313")) //使用GUID实例化为SPSite对象
4>SPSite site4 = SPContext.Current.Site;
SPWeb:
1>SPWeb web3 = site3.RootWeb;
2>SPWebCollection allWebs = site3.AllWebs;
3>SPWeb web4 = site3.AllWebs["webname"];
4>SPWeb web5 = site3.OpenWeb("weburl");
由于网站集是操作网站、列表、库的根节点,所以首先要掌握好如何获取网站集SPSite对象的方法,在SharePoint 2010中基本可以分三种方法实例化SPSite对象。这三种方法在不同的场合有不同的获取方法。
获取到SPSite对象之后就可以在其下操作相应的对象了,比如:操作网站的SPWeb对象,操作列表的SPList对象等。
下面是完整的获取网站集对象SPSite的几种方法:
01 |
using System;
|
02 |
using System.Collections.Generic;
|
03 |
using System.Linq;
|
04 |
using System.Text;
|
05 |
|
06 |
using Microsoft.SharePoint;
|
07 |
|
08 |
namespace Example.SharePoint2010.ServerOM
|
09 |
{ |
10 |
/// <summary>
|
11 |
/// 网站集SPSite对象的使用
|
12 |
/// </summary>
|
13 |
public class SPSiteOM
|
14 |
{
|
15 |
public void SPSiteMethod()
|
16 |
{
|
17 |
SPSite site1 = new SPSite("http:/ /siteName");
|
18 |
SPWeb web1 = site1.RootWeb;
|
19 |
site1.Close();
|
20 |
site1.Dispose();
|
21 |
//使用绝对URL实例化SPSite对象
|
22 |
using (SPSite site2 = new SPSite("http:/ /siteName"))
|
23 |
{
|
24 |
SPWeb web2 = site2.RootWeb;
|
25 |
}
|
26 |
//使用GUID实例化为SPSite对象
|
27 |
using (SPSite site3 = new SPSite(new Guid("ba3d975e-d956-43da-955b-52fcb1309313")))
|
28 |
{
|
29 |
//获取根网站
|
30 |
SPWeb web3 = site3.RootWeb;
|
31 |
//获取网站集下的所有网站
|
32 |
SPWebCollection allWebs = site3.AllWebs;
|
33 |
//根据网站名称获取网站对象
|
34 |
SPWeb web4 = site3.AllWebs["webname"];
|
35 |
//根据网站URL获取网站对象
|
36 |
SPWeb web5 = site3.OpenWeb("weburl");
|
37 |
}
|
38 |
//获取当前上下文的SPSite对象
|
39 |
SPSite site4 = SPContext.Current.Site;
|
40 |
}
|
41 |
}
|
42 |
} |
==SPWeb对象的几种方法
|
using (SPSite site = new SPSite("http:/ /develop"))
|
02 |
{ |
03 |
//获取根网站SPWeb对象。
|
04 |
SPWeb web1 = site.RootWeb;
|
05 |
//获取根网站SPWeb对象。
|
06 |
SPWeb web2 = site.OpenWeb();
|
07 |
//根据网站URL地址名称获取SPWeb对象。
|
08 |
//如:http:/ /develop/StrUrlName
|
09 |
SPWeb web3 = site.OpenWeb("strUrlName");
|
10 |
//根据GUID值获取SPWeb对象。
|
11 |
SPWeb web4 = site.OpenWeb(new Guid("410CAFBB-23CA-4427-9A13-024C1CF624F5"));
|
12 |
//根据指定的名称获取SPWeb对象。
|
13 |
SPWeb web5 = site.AllWebs["项目组网站"];
|
14 |
//根据指定的索引号来获取SPWeb对象。
|
15 |
SPWeb web6 = site.AllWebs[0];
|
16 |
//获取代码运行的上下文中的SPWeb对象。
|
17 |
SPWeb web7 = SPContext.Current.Web;
|
18 |
//关闭SPWeb
|
19 |
web1.Close();
|
20 |
//释放SPWeb
|
21 |
web1.Dispose();
|
22 |
//使用using关键字则不需要释放
|
23 |
using (SPWeb web8 = site.RootWeb)
|
24 |
{
|
25 |
SPList list = web8.Lists[1];
|
26 |
}
|
27 |
} |