Warum ist die also der Property bag für den Administrator von Interesse? In größeren SharePoint Installationen möchte ich als IT-Professional wissen, wer wann welche Site bestellt hat. Diese Person nenne ich normalerweise den Site Owner. Der Site Owner ist die Person, welche letztlich entscheidet was mit der Site passiert.
Wir benötigen eine Zuordnung von Site Owner zur Site. Eine Möglichkeit wäre z.B. eine Liste zu führen und dort alle URLs und Kontaktdaten der Personen eintragen. Das wäre aber nicht die Art und Weise wie wir eigentlich mit SharePoint arbeiten. In SharePoint arbeiten wir mit Metainformationen und daher wäre es nur logisch, wenn der Site Owner eine Eigenschaft der Site wäre. Mit dem Property bag können wir genau das erreichen.
Als erstes setzten wir den Kontext auf die Site mit der wir arbeiten wollen:
$web = Get-SPWeb http://host.domain.tld/Wir können uns alle vorhandenen Eigenschaften im Property bag anzeigen lassen:
$web.PropertiesUm eine eigene Eigenschaft hinzu zu fügen, können wir die Methode Add() verwenden. Dabei nimmt die Methode zwei Parameter entgegen. Den Key und den Value.
Es spielt dabei keine Rolle, ob der Key Groß- und Kleinbuchstaben verwendet. Der Key wird automatisch in Kleinbuchstaben gewandelt.
$web.Properties.Add(“Key”, “Value”)Um einen vorhandenen Key zu entfernen verwendet man die Methode Remove():
$web.Properties.remove(“Key”)Änderungen die bisher am Property bag vorgenommen wurden sind nicht permanent und gehen verloren sobald die PowerShell Session beendet wird. Damit die Änderungen auch übernommen werden, muss der Property bag mittels der Methode Update() gespeichert werden.
$web.Properties.Update()Vielleicht fallen euch noch andere Fälle ein bei dem man den Property bag gebrauchen kann. Postet eure Ideen einfach bei den Kommentaren.