Sharepoint 获取SPUser对象

Sharepoint 获取SPUser对象,sharepoint,permissions,Sharepoint,Permissions,我试图用这段代码获取SPUser对象,但它一直抛出“找不到用户”异常,即使当它返回true时,DoesUserHavePermissions(…),有人知道任何修复方法吗 if (web.Site.RootWeb.DoesUserHavePermissions("UserLoginName", SPBasePermissions.Open)) { SPUser user = web.Site.RootWeb.Users["UserLoginName"]; } 无法使用网站。请根据MSDN

我试图用这段代码获取SPUser对象,但它一直抛出“找不到用户”异常,即使当它返回true时,
DoesUserHavePermissions(…
),有人知道任何修复方法吗

if (web.Site.RootWeb.DoesUserHavePermissions("UserLoginName", SPBasePermissions.Open))
{
   SPUser user = web.Site.RootWeb.Users["UserLoginName"];
}
无法使用
网站。请根据MSDN确保

  • 用户包含在网站中明确分配权限的用户对象
  • SPWeb.AllUsers包含用户对象,表示作为站点成员或作为站点中域组的已验证成员浏览到站点的所有用户
因此,使用诱惑收集

 SPUser user = web.Site.RootWeb.AllUsers["UserLoginName"];