Freigeben über


SPChangeUser.IsSiteAdminChange-Eigenschaft

Gibt an, ob die Änderung fügt hinzu oder entfernt Administratorberechtigungen für die Website.

Namespace:  Microsoft.SharePoint
Assembly:  Microsoft.SharePoint (in Microsoft.SharePoint.dll)

Syntax

'Declaration
Public ReadOnly Property IsSiteAdminChange As Boolean
    Get
'Usage
Dim instance As SPChangeUser
Dim value As Boolean

value = instance.IsSiteAdminChange
public bool IsSiteAdminChange { get; }

Eigenschaftswert

Typ: System.Boolean
true Wenn die Änderung hinzugefügt oder, Standort-Administratorberechtigungen entfernt; andernfalls false.

Beispiele

Das folgende Beispiel zeigt eine Konsolenanwendung, die das Änderungsprotokoll für Änderungen an Websitesammlungsbenutzer abfragt. Dann Listet die Änderungen (falls vorhanden) und den Benutzernamen, Datum und Typ der einzelnen Änderungen an der Konsole ausgegeben. Wenn die Änderung für die Websitesammlung hinzugefügt oder, Standort-Administratorberechtigungen entfernt, druckt die Anwendung diese Informationen an die Konsole als auch.

Imports System
Imports Microsoft.SharePoint

Module ConsoleApp
   Sub Main()
      Using siteCollection As SPSite = New SPSite("https://localhost")
         Using webSite As SPWeb = siteCollection.RootWeb

            ' Construct a query.
            Dim query As New SPChangeQuery(False, False)

            ' Object type.
            query.User = True

            ' Change types. 
            query.Add = True
            query.Delete = True
            query.Update = True

            ' Get the user collection.
            Dim users As SPUserCollection = webSite.AllUsers

            While True
               Dim changes As SPChangeCollection = siteCollection.ContentDatabase.GetChanges(query)

               For Each change As SPChange In changes
                  ' Process Change.
                  Dim userChange As SPChangeUser = CType(change, SPChangeUser)

                  Try
                     ' Throws an exception if not found.
                     Dim user As SPUser = users.GetByID(userChange.Id) 
                     Console.WriteLine(ControlChars.Lf + "User {0} was changed.", user.LoginName)

                     If user.IsSiteAdmin Then
                        Console.WriteLine("This user is a site admin.")
                     End If

                  Catch ex As SPException
                     Console.WriteLine(ControlChars.Lf + "User {0} cannot be found", userChange.Id)
                  End Try

                  Console.WriteLine("Type of change: {0}", userChange.ChangeType.ToString())

                  If userChange.IsSiteAdminChange Then
                     Console.WriteLine("This change added or removed site admin privileges.")
                  End If

                  Console.WriteLine("Date of change: {0}", userChange.Time.ToShortDateString())

               Next change

               ' Break out of the loop when we fetch the last batch of changes.
               If changes.Count < SPChangeCollection.CountLimit Then
                  Exit While
               End If

               ' Go get another batch of changes starting where we left off.
               query.ChangeTokenStart = changes((changes.Count - 1)).ChangeToken

            End While

         End Using
      End Using
      Console.Write(vbCrLf + "Press ENTER to continue...")
      Console.ReadLine()
   End Sub
End Module
using System;
using Microsoft.SharePoint;

namespace Test
{
   class ConsoleApp
   {
      static void Main(string[] args)
      {
         using (SPSite siteCollection = new SPSite("https://localhost"))
         {
            using (SPWeb webSite = siteCollection.RootWeb)
            {
               // Construct a query.
               SPChangeQuery query = new SPChangeQuery(false, false); 

               // Object type.
               query.User = true;

               // Change types. 
               query.Add = true;
               query.Delete = true;
               query.Update = true;

               // Get the user collection.
               SPUserCollection users = webSite.AllUsers;

               while (true)
               {
                  SPChangeCollection changes = siteCollection.ContentDatabase.GetChanges(query);

                  foreach (SPChange change in changes)
                  {
                     // Process change.
                     SPChangeUser userChange = (SPChangeUser)change;

                     try
                     {
                        SPUser user = users.GetByID(userChange.Id); // Throws an exception if not found
                        Console.WriteLine("\nUser {0} was changed.", user.LoginName);
                        if (user.IsSiteAdmin)
                        {
                           Console.WriteLine("This user is a site admin.");
                        }
                     }
                     catch (SPException)
                     {
                        Console.WriteLine("\nUser {0} cannot be found", userChange.Id);
                     }
                     Console.WriteLine("Type of change: {0}", userChange.ChangeType.ToString());
                     if (userChange.IsSiteAdminChange)
                        Console.WriteLine("This change added or removed site admin privileges.");
                     Console.WriteLine("Date of change: {0}", userChange.Time.ToShortDateString());
                  }

                  // Break out of the loop when we fetch the last batch of changes.
                  if (changes.Count < SPChangeCollection.CountLimit)
                     break;
                  // Go get another batch of changes starting where we left off.
                  query.ChangeTokenStart = changes[changes.Count - 1].ChangeToken;
               }
            }
         }
         Console.Write("\nPress ENTER to continue...");
         Console.ReadLine();
      }
   }
}

Siehe auch

Referenz

SPChangeUser Klasse

SPChangeUser-Member

Microsoft.SharePoint-Namespace

IsSiteAdmin