我需要使用客户端对象模型检索指定用户的子站点列表。挑战在于,这是从C#Web服务调用的,该服务以可访问所有子站点的SharePoint用户的身份运行。有没有办法过滤此列表只返回属于指定用户的那些?我只有用户名,并且没有此帐户的密码,因此使用NetworkCredential进行直接模拟不起作用。
下面的伪代码:
var clientContext = new ClientContext(siteUrl);
var site = clientContext.Web;
var user = site.CurrentUser;
clientContext.Load(site);
clientContext.Load(user);
clientContext.ExecuteQuery();
var webCollection = site.GetSubwebsForCurrentUser(null);
clientContext.Load(webCollection);
clientContext.ExecuteQuery();
foreach (var web in webCollection)
{
// should I check permissions here?
}