使用SharePoint Web Service(3):删除子站点

在我这篇日志中介绍了如何用Web Sevice创建一个子站点,既然能够创建站点,就应该能够删除。这篇文章就介绍一下在客户端编程的时候删除站点的方法。

Meetings.CreateWorkspace提供了创建子站点的办法,与之相对的Meetings.DeleteWorkspace方法也提供一个删除掉站点的方法,但是只能删除掉Meeting Workspace站点。如果尝试删除非Meeting Workspace站点,会抛出一个异常,具体在SDK中写的很清楚,我也不赘述了。

 

这样只有一条路了,使用SharePoint RPC,其中remove service方法可以做到这一点,以下是示例方法:

其中service_name是相对于根站点的相对路径,例如你站点是http://www.contoso.com/sites/team01/subsite01/,这里的路径就是/sites/team01/subsite01。

 

var rpcString = 'method=remove+service&service_name='+Web_Server_Relative_Url+'/'+siteName;
$.ajax({
    	url: Web_Server_Relative_Url+'/_vti_bin/_vti_adm/admin.dll',
    	type: 'POST',
    	beforeSend: function(xhr) {
    		xhr.setRequestHeader('X-Vermeer-Content-Type', 'application/x-www-form-urlencoded');
    	},
    	data: rpcString,
    	async: true,
    	contentType: 'application/x-www-form-urlencoded',
    	complete: function(data, textStatus){
		if (textStatus == 'success' && $(data.responseText).length == 2){
			//sucessfully deleted web.
			//do your job here
		} else {
			//failed to delete web
		}
	}
});
posted @ 2011-04-27 16:02  Lambert Qin  Views(1450)  Comments(1Edit  收藏  举报