次の方法で共有


SPWeb.RoleAssignments プロパティ (Microsoft.SharePoint)

Web サイトのロールの割り当てのコレクションを取得します。

名前空間: Microsoft.SharePoint
アセンブリ: Microsoft.SharePoint (microsoft.sharepoint.dll 内)

構文

'宣言
Public ReadOnly Property RoleAssignments As SPRoleAssignmentCollection
'使用
Dim instance As SPWeb
Dim value As SPRoleAssignmentCollection

value = instance.RoleAssignments
public SPRoleAssignmentCollection RoleAssignments { get; }

プロパティ値

ロール割り当てを表す SPRoleAssignmentCollection オブジェクト。

ユーザーやユーザー グループのロール割り当てを取得するには、次のコードを使用します。


private void AddWebSiteRoleAssignmentNodes(SPWeb oWeb)
{ 
    try
    {
        if (oWeb.HasUniqueRoleAssignments)
        {
            SPRoleAssignmentCollection oRoleAssignments = oWeb.RoleAssignments;

            foreach (SPRoleAssignment oRoleAssignment in oRoleAssignments)
            {
                SPPrincipal oPrincipal = oRoleAssignment.Member;
                try
                {
                    // To retrieve Users having explicit permissions on the WebSite
                    SPUser oRoleUser = (SPUser)oPrincipal;
                }
                catch (Exception ex)
                {
                    string msg = ex.Message;
                }
                try
                {
                    // To retrieve User-Groups having permissions on the WebSite
                    SPGroup oRoleGroup = (SPGroup)oPrincipal;

                    if (oRoleGroup.Users.Count > 0)
                    { 
                        string strGroupName = oRoleGroup.Name;
                        // Add code here to retrieve Users inside this User-Group
                    }
                }
                catch (Exception ex)
                {
                    string msg = ex.Message;
                }
            }
        }
    }
    catch (Exception ex)
    {
        string msg = ex.Message;
    }       
}

関連項目

参照

SPWeb クラス
SPWeb メンバ
Microsoft.SharePoint 名前空間