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