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 |
} |