Результаты безопасности охраны для пользовательских запросов на собственность
-
28-09-2020 - |
Вопрос
Сайты в моей коллекции сайта используют пользовательское свойство, чтобы определить, какой «тип» сайта они являются.Например.
web.Properties["SiteCategory"] = "SomeCategory1";
.
Я планирую создать веб-часть, чтобы показать все сайты в моей коллекции сайта, которые имеют недвижимость.
Вот фрагмент того, что я планирую сделать:
SPSite site = SPContext.Current.Site;
foreach (SPWeb web in site.AllWebs)
{
if (web.Properties["SiteCategory"] == "SomeCategory1") {
/* Insert code to display the current site URL on the web part */
}
}
.
Результатом будет безопасность, обрезанная для текущего пользователя?Или это просто покажет все сайты в коллекции сайта?Что бы мне нужно, чтобы он был обрезан безопасностью?
Также, производительность-мудрый, это жизнеспособный вариант?Если у вас есть какой-то другой способ сделать это, я все уши.
Решение
Используйте следующий код:
using(SPSite site = new SPSite("http://example/site/"))
{
using (SPWeb web = site.OpenWeb())
{
SPWebCollection webCollection = web.GetSubwebsForCurrentUser();
foreach (SPWeb web in webCollection)
{
if (web.Properties["SiteCategory"] == "SomeCategory1")
{}
}
}
}
. Не связан с sharepoint.stackexchange