SPWeb.Groups vs SPWeb.AssociatedGroups
Я видел три типа групповых свойств для объекта SPWeb
- Groups
, SiteGroups
, AssociatedGroups
.
Я понимаю, что SiteGroups
будет извлекать все группы в текущем семействе сайтов. Но в чем разница между Groups
и AssociatedGroups
. Определение MSDN гласит, что Groups
получит все "кросс-сайты" (!) Групп для этого веб-сайта. AssociatedGroups
довольно легко понять только с самого имени.
Итак, что возвращает Groups
? Может ли кто-нибудь объяснить мне пример?
Ответы
Ответ 1
Groups
вернуть все группы, которым назначены роли безопасности для текущего сайта.
AssociatedGroups
вернуть все группы, видимые в левом меню People and Group page
. Эти группы могут не иметь доступа к текущему сайту (если параметры безопасности не наследуются от родительского сайта). В этом случае некоторые из них не будут указаны в свойстве Groups
.
Чтобы увидеть разницу на дочернем сайте, создайте новую группу без разрешения. Группа будет видна в меню AssociatedGroups
и влево, но не будет отображаться на странице Groups
или Site Permissions.
Ответ 2
Я считаю, что msdn имеет ответ
http://msdn.microsoft.com/en-us/library/microsoft.sharepoint.spweb.sitegroups.aspx
Получает коллекцию, содержащую все группы в семействе сайтов.
http://msdn.microsoft.com/en-us/library/microsoft.sharepoint.spweb.groups.aspx
Получает коллекцию, содержащую все группы для веб-сайта. В следующем примере кода используется свойство Groups для возврата коллекции групп для указанного сайта в текущем семействе сайтов.
Это означает, что SPGroup использовалась (т.е. назначалась разрешающая способность в) в SPWeb где-то.