SharePoint2010对象模型SPSite对象OpenWeb()方法的使用

1.SharePoint 2010对象模型

1.1.SPSite对象的OpenWeb()方法
SharePoint 2010对象模型SPSite对象可以通过OpenWeb()方法获得该网站集中一个特定的网站,可以通过以下三种方式获取SPWeb对象:
1.2.使用OpenWeb()方法获取根网站
可以通过SPSite对象不带参数的OpenWeb()方法获取网站集的根网站,也叫顶级网站,代码如下:
SPSite site = new SPSite("http://sitename");
SPWeb web1 = site.OpenWeb();
1.3.根据Guid获取指定的网站
如果我们知道SharePoint 2010站点中某个网站的GUID值,我们也可以通过SPSite对象的OpenWeb()方法获得该网站,代码如下:
SPWeb web2 = site.OpenWeb(new Guid("1AB0554B-9437-416E-859B-048C0C93A732"));
1.4.根据相对URL获取指定的网站
我们最常用的方法就是根据某个网站的具体相对URL获取某个特定的网站,相对于服务器根路径或者网站集根路径。代码如下:
SPWeb web3 = site.OpenWeb("test");
上面这代码可以这样解释,假如整个SharePoint 2010站点的地址为:
http://lbj-sharepoint/test,则上面的代码就是获取test网站的SPWeb对象。这段代码还可有一个参数,如图1所示:
SharePoint 2010对象模型SPSite对象OpenWeb()方法的使用
图1
第二个参数是bool类型的,作用是如果参数值为true,则第一个参数就必须是一个在SharePoint 2010站点中存在的且有效的Url,否则系统会报如下错误:
<nativehr>0x80070002</nativehr><nativestack></nativestack>没有名称为“/xx”的网站。
如图2所示:
SharePoint 2010对象模型SPSite对象OpenWeb()方法的使用
图2
但是如果第二个参数为false,则系统就不会报错,而是直接忽略不存在的URL直接获取根网站对象。代码如下:
SPWeb web4 = site.OpenWeb("xx", true);
posted @ 2011-11-11 11:33  落冰  阅读(589)  评论(0编辑  收藏  举报