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