SharePoint-Websitedesign: CSOM-Entwicklung

Das clientseitige SharePoint-Objektmodell (Client-Side Object Model, CSOM) bietet Zugriff auf das SharePoint-Objektmodell von Code, der lokal oder auf einem anderen Server als SharePoint ausgeführt wird.

Voraussetzungen

Machen Sie sich mit den folgenden Themen vertraut, bevor Sie mit den ersten Schritten beginnen:

Sie müssen zudem auf das Microsoft.SharePointOnline.CSOM-NuGet-Paket (Version 16.1.6906.1200 oder höher) verweisen.

CSOM-Codebeispiel

Das folgende Beispiel zeigt, wie Sie das Objekt Microsoft.Online.SharePoint.TenantAdministration.Tenant erstellen und die Methode GetAllTenantThemes aufrufen, um eine Liste mit Designs zurückzugeben.

Hinweis

  • Die URL zum Erstellen des Kontextobjekts enthält das Suffix -admin, da TenantAdministration-Methoden mit der Adminwebsite funktionieren.
  • Erstellen Sie eine Tenant-Instanz mit dem Tenant-Konstruktor, und rufen Sie dann die Methoden für diese Instanz auf.
  • Die können den gleichen Ansatz zum Aufrufen anderer Methoden für die Designverwaltung verwenden.
using System.Security;
using Microsoft.SharePoint.Client;
using Microsoft.Online.SharePoint.TenantAdministration;
using Microsoft.Online.SharePoint.TenantManagement;

...

ClientContext ctx = new ClientContext("https://mysite-admin.sharepoint.com/");
var pwd = "mypassword";
var passWord = new SecureString();
foreach (char c in pwd.ToCharArray()) passWord.AppendChar(c);
ctx.Credentials = new SharePointOnlineCredentials("admin@mydomain.com", passWord);
Tenant tenant = new Tenant(ctx);
ClientObjectList<ThemeProperties> themes = tenant.GetAllTenantThemes();

Beispiel für Designdefinition

Bei Methoden, die ein Designargument akzeptieren, definiert der folgende Code eine SPOTheme-Klasse, die Sie zum Erstellen von benutzerdefinierten Designs verwenden können.

/// <summary> 
/// Properties defining a theme in SharePoint Online. 
/// </summary> 
public class SPOTheme 
{ 
    /// <summary> 
    /// Specifies the name of the theme. This must uniquely identify the theme. 
    /// </summary> 
    public string Name 
    { 
        get; private set; 
    } 
    /// <summary> 
    /// Specifies the palette of colors in the theme, as a dictionary of theme slot values. 
    /// </summary> 
    public IDictionary<String, String> Palette 
    { 
        get; private set; 
    } 
    /// <summary> 
    /// Specifies whether the theme is inverted, with a dark background and a light foreground. 
    /// </summary> 
    public bool IsInverted 
    { 
        get; private set; 
    } 
} 

Anwenden eines Designs

Es ist aktuell keine unterstützte CSOM-API zum programmgesteuerten Anwenden eines Designs auf eine spezielle Website vorhanden. Informationen zum Anwenden von benutzerdefinierten Designs auf einzelne Websitesammlungen finden Sie unter SharePoint-Website Entwurf und Website-Skript (Übersicht).

Methoden/Eigenschaften der Klasse „Microsoft.Online.SharePoint.TenantAdministration.Tenant“

Verwenden Sie die folgenden Methoden, um die Gruppe der verfügbaren Designs für eine SharePoint-Mandantenverwaltungswebsite anzupassen. Sie können ein neues benutzerdefiniertes Design hinzufügen, ein vorhandenes Design aktualisieren oder ein Design löschen und ein bestimmtes Design oder alle Designs abrufen. Sie können auch die Standarddesigns ausblenden oder wiederherstellen, die SharePoint bereitstellt.

Öffentliche Methode „AddTenantTheme“

Fügen Sie dem Mandanten ein Design hinzu.

Namespace: Microsoft.Online.SharePoint.TenantAdministration.Tenant
Parameter: string name, string themeJson
Rückgabetyp: ClientResult<bool>

Öffentliche Methode „DeleteTenantTheme“

Löschen Sie ein Design aus dem Mandanten.

Namespace: Microsoft.Online.SharePoint.TenantAdministration.Tenant
Parameter: string name
Rückgabetyp: void

Öffentliche Methode „GetAllTenantThemes“

Rufen Sie alle Designs ab, die zurzeit im Mandanten verfügbar sind, einschließlich aller benutzerdefinierten Designs, die hinzugefügt wurden. Standarddesigns werden nur hinzugefügt, wenn die Eigenschaft HideDefaultThemesfalse ist (Standardwert).

Namespace: Microsoft.Online.SharePoint.TenantAdministration.Tenant
Parameter: none
Rückgabetyp: ClientObjectList<ThemeProperties>

Öffentliche Methode „GetTenantTheme“

Rufen Sie ein Design anhand des Namens ab.

Namespace: Microsoft.Online.SharePoint.TenantAdministration.Tenant
Parameter: string name
Rückgabetyp: ThemeProperties

Öffentliche Eigenschaft „HideDefaultThemes“

Diese Eigenschaft gibt an, ob die Standarddesigns in der Benutzeroberfläche der Designauswahl zur Verfügung stehen. Die Standardeinstellung ist false (Standarddesigns sind verfügbar). Sie möchten diese Eigenschaft nach dem Definieren benutzerdefinierter Designs evtl. auf true festlegen, um nur bestimmte Designs zuzulassen.

Namespace: Microsoft.Online.SharePoint.TenantAdministration.Tenant
Typ: Boolesch

Öffentliche Methode „UpdateTenantTheme“

Aktualisieren Sie die Einstellungen für ein vorhandenes Design.

Namespace: Microsoft.Online.SharePoint.TenantAdministration.Tenant
Parameter: string name, string themeJson
Rückgabetyp: ClientResult<bool>

Methoden der Klasse „Microsoft.Online.SharePoint.TenantManagement.Tenant“

Dies sind alternative APIs zum Verwalten von Designs auf Mandantenebene.

Öffentliche Methode „AddTenantTheme“

Fügen Sie dem Mandanten ein Design hinzu.

Namespace: Microsoft.Online.SharePoint.TenantManagement.Tenant
Parameter: string name, string themeJson
Rückgabetyp: ClientResult<bool>

Öffentliche Methode „GetAllTenantThemes“

Rufen Sie alle Designs ab, die zurzeit im Mandanten verfügbar sind, einschließlich aller benutzerdefinierten Designs, die hinzugefügt wurden. Standarddesigns werden nur hinzugefügt, wenn die Eigenschaft HideDefaultThemesfalse ist (Standardwert).

Namespace: Microsoft.Online.SharePoint.TenantManagement.Tenant
Parameter: none
Rückgabetyp: ClientObjectList<ThemeProperties>

Öffentliche Methode „GetHideDefaultThemes“

Prüfen Sie die aktuelle Einstellung zum Ausblenden von Standarddesigns in der Benutzeroberfläche der Designauswahl.

Namespace: Microsoft.Online.SharePoint.TenantManagement.Tenant
Parameter: none
Rückgabetyp: ClientResult<bool>

Öffentliche Methode „GetTenantTheme“

Rufen Sie ein Design anhand des Namens ab.

Namespace: Microsoft.Online.SharePoint.TenantManagement.Tenant
Parameter: string name
Rückgabetyp: ThemeProperties

Öffentliche Methode „SetHideDefaultThemes“

Geben Sie an, ob Standarddesigns in der Benutzeroberfläche der Designauswahl ausgeblendet werden.

Namespace: Microsoft.Online.SharePoint.TenantManagement.Tenant
Parameter: Boolean
Rückgabetyp: void

Öffentliche Methode „UpdateTenantTheme“

Aktualisieren Sie die Einstellungen für ein vorhandenes Design.

Namespace: Microsoft.Online.SharePoint.TenantManagement.Tenant
Parameter: string name, string themeJson
Rückgabetyp: ClientResult<bool>

Siehe auch