コード例 #1
0
        private void GetLists(SPSite site, bool includeInherited)
        {
            SPSecurity.RunWithElevatedPrivileges(delegate()
            {
                foreach (SPWeb web in site.AllWebs)
                {
                    foreach (SPList list in web.Lists)
                    {
                        if (!list.HasUniqueRoleAssignments)
                        {
                            if (!includeInherited)
                            {
                                continue;
                            }
                        }

                        SecurableObject so = new SecurableObject();
                        so.Title           = list.Title;
                        so.Url             = SPUtility.GetFullUrl(list.ParentWeb.Site, list.DefaultViewUrl);
                        so.InternalObject  = list;
                        so.Type            = "List";

                        if (list is SPDocumentLibrary)
                        {
                            so.Type = "Library";
                        }

                        _securableObjects.Add(so);
                    }
                }
            });
        }
コード例 #2
0
        private void GetWebSites(SPSite site, bool includeInherited, SPWeb filterWeb)
        {
            SPSecurity.RunWithElevatedPrivileges(delegate()
            {
                foreach (SPWeb web in site.AllWebs)
                {
                    if (!web.HasUniqueRoleAssignments)
                    {
                        if (!includeInherited)
                        {
                            continue;
                        }
                    }

                    if (filterWeb != null)
                    {
                        if (!Helper.Instance.AreUrlsEqual(filterWeb.Url, web.Url))
                        {
                            continue;
                        }
                    }

                    SecurableObject so = new SecurableObject();
                    so.Title           = web.Title;
                    so.Url             = web.Url;
                    so.Type            = "Site";
                    so.InternalObject  = web;

                    _securableObjects.Add(so);
                }
            });
        }
コード例 #3
0
        private void GetListItems(SPSite site, bool includeInherited)
        {
            SPSecurity.RunWithElevatedPrivileges(delegate()
            {
                foreach (SPWeb web in site.AllWebs)
                {
                    foreach (SPList list in web.Lists)
                    {
                        foreach (SPListItem item in list.Items)
                        {
                            if (!item.HasUniqueRoleAssignments)
                            {
                                if (!includeInherited)
                                {
                                    continue;
                                }
                            }

                            SecurableObject so = new SecurableObject();
                            so.Title           = item.DisplayName;
                            so.Url             = item["EncodedAbsUrl"].ToString();
                            so.Type            = "Item";
                            so.InternalObject  = item;

                            _securableObjects.Add(so);
                        }
                    }
                }
            });
        }