如何使用 SharePoint CSOM 检查当前用户是否是 SiteCollection 管理员?
问问题
6803 次
2 回答
8
如何使用 CSOM 确定当前用户是否是站点管理员
SharePoint 2013 CSOM
使用User.IsSiteAdmin 属性获取或设置一个布尔值,该值指定用户是否是网站集管理员,例如:
using (var ctx = new ClientContext(webUri))
{
var currentUser = ctx.Web.CurrentUser;
ctx.Load(currentUser);
ctx.ExecuteQuery();
Console.WriteLine(currentUser.IsSiteAdmin);
}
SharePoint 2010 CSOM
由于User
对象在 SharePoint 2010 CSOM 中不公开IsSiteAdmin
属性,下面演示如何确定当前用户是否为站点管理员使用User Information List
:
using (var ctx = new ClientContext(url))
{
var currentUser = ctx.Web.CurrentUser;
ctx.Load(currentUser);
ctx.ExecuteQuery();
var isCurrentUserSiteAdmin = IsUserSiteAdmin(ctx, currentUser.Id);
}
public static bool IsUserSiteAdmin(ClientContext ctx,int userId)
{
var userInfoList = ctx.Site.RootWeb.SiteUserInfoList;
var item = userInfoList.GetItemById(userId);
ctx.Load(item);
ctx.ExecuteQuery();
return (bool)item["IsSiteAdmin"];
}
于 2014-12-10T11:41:37.947 回答
1
关于什么
spcontext.current.Site.RootWeb.CurrentUser.IsSiteAdmin
于 2013-06-25T12:49:51.207 回答