0

このコードで SPUser オブジェクトを取得しようとしていますが、true を返してもユーザーが見つからないという例外をスローし続けますDoesUserHavePermissions(...

if (web.Site.RootWeb.DoesUserHavePermissions("UserLoginName", SPBasePermissions.Open))
{
   SPUser user = web.Site.RootWeb.Users["UserLoginName"];
}

使えませんweb.Ensure

4

1 に答える 1

0

MSDNによると:

  • SPWeb.Users には、Web サイトでアクセス許可が明示的に割り当てられているユーザー オブジェクトが含まれています。
  • SPWeb.AllUsers には、サイトのメンバーであるか、サイト内のドメイン グループの認証済みメンバーとしてサイトを参照したすべてのユーザーを表すユーザー オブジェクトが含まれています。

したがって、AllUsers コレクションを使用します

 SPUser user = web.Site.RootWeb.AllUsers["UserLoginName"];
于 2013-09-13T10:21:14.967 に答える