Функция WSS 3.0 — проверьте, является ли пользователь администратором фермы

Я разрабатываю функцию sharepoint, которая должна позволять только администратору фермы удалять коллекцию сайтов. В событии SiteDeleting мне нужно проверить, является ли удаляемый пользователь farmadmin. Как мне это сделать? У меня есть свойство, чтобы проверить, является ли пользователь webadmin (properties.Web.UserIsWebAdmin) или siteadmin (properties.Web.UserIsSiteAdmin), но как проверить, является ли пользователь администратором фермы?

Любая помощь высоко ценится..


person Bala    schedule 22.07.2010    source источник


Ответы (1)


SPFarm farm = SPFarm.Local;
farm.CurrentUserIsAdministrator();

Эти классы находятся в пространстве имен Microsoft.SharePoint.Administration. Подробнее об CurrentUserIsAdministrator или класс SPFarm на MSDN.

person Janis Veinbergs    schedule 22.07.2010
comment
Я бы проголосовал, если бы здесь были инструкции о том, как получить текущую ферму - это нестатический метод... - person Code Jockey; 15.10.2013
comment
@CodeJockey конечно. Отредактированный ответ. Кстати, во втором ответе пользователя 2086490 было то, что вы искали :) - person Janis Veinbergs; 16.10.2013
comment
хмммм... ну, не совсем, так как я не собираюсь изобретать велосипед - если есть функция API для использования, а не определение пользовательской функции с делегатом и вызовом цикла, то я бы предпочел API функции - если нет существенной разницы. Также - вы были здесь накануне, а user2086490 не появлялся со 2 мая в 14:47. Конечно, некоторые люди действительно могут использовать цикл или функцию или иметь возможность что-то делать с самой группой администраторов фермы или с одним или несколькими ее членами, и ваш ответ не дает этих вещей, поэтому ... они оба полезны - person Code Jockey; 16.10.2013